{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "8ac4ba3b-c438-4f2e-8f52-39846beb5642",
   "metadata": {},
   "source": [
    "<a href=\"https://colab.research.google.com/github/meta-llama/llama-recipes/blob/main/recipes/3p_integrations/langchain/langgraph_tool_calling_agent.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "974c2eb0-4844-4e0d-ae91-91571d070a3f",
   "metadata": {},
   "outputs": [],
   "source": [
    "! pip install -U langchain_groq langchain tavily-python replicate langgraph matplotlib"
   ]
  },
  {
   "attachments": {
    "e5e59030-655b-401d-962c-2ef75410b177.png": {
     "image/png": "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QAABBBBAAAEEEEAAAQQQQACBhAkQhE4YLQMjgAACCCCAAAIIIIAAAggggAACCCCAAAIIEITmbwABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAgYQIEoRNGy8AIIIAAAggggAACCCCAAAIIIIAAAggggAACBKH5G0AAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBImABB6ITRMjACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAQWj+BhBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQSJkAQOmG0DIwAAggggAACCCCAAAIIIIAAAggggAACCCBAEJq/AQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAIGECRCEThgtAyOAAAIIIIAAAggggAACCCCAAAIIIIAAAggQhOZvAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQCBhAgShE0bLwAgggAACCCCAAAIIIIAAAggggAACCCCAAAIEofkbQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEiYAEHohNEyMAIIIIAAAggggAACCCCAAAIIIIAAAggggABBaP4GEEAAAQQQQAABBBBAAAEEEEAAAQQQQAABBBImQBA6YbQMjAACCCCAAAIIIIAAAggggAACCCCAAAIIIEAQmr8BBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAgYQJEIROGC0DI4AAAggggAACCCCAAAIIIIAAAggggAACCBCE5m8AAQQQQAABBBBAAAEEEEAAAQQQQAABBBBAIGECBKETRsvACCCAAAIIIIAAAggggAACCCCAAAIIIIAAAgSh+RtAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQSJgAQeiE0TIwAggggAACCCCAAAIIIIAAAggggAACCCCAAEFo/gYQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEiZAEDphtAyMAAIIIIAAAggggAACCCCAAAIIIIAAAgggQBCavwEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACBhAkQhE4YLQMjgAACCCCAAAIIIIAAAggggAACCCCAAAIIEITmbwABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAgYQIEoRNGy8AIIIAAAggggAACCCCAAAIIIIAAAggggAACBKH5G0AAAQQQQAABBBBAAAEEEEAAAQQQQAABBBBImABB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AggggAACCCCAAAIIIIAAAggggAACCCRegCB04o05AwIIIIAAAggggAACCCCAAAIIIIAAAgggUGAFCEIX2KeeC0cAAQQQQAABBBBAAAEEEEAAAQQQQAABBBIvQBA68cacAQEEEEAAAQQQQAABBBBAAAEEEEAAAQQQKLACRQrslXPhCCCAAAII7BGYMWOGlSpVyv0kJSVZ+fLlscllAlu3brUtW7a4n02bNlnRokWtWLFitnHjRmvatGkumy3TQQABBBBAAAEEEEAAAQQQCBcgCB2uwX0EEEAAgXwrMH78ePvpp59MAeelS5da165d7fLLL3fXu3r1arvrrrts8+bNtn37dnd7880324UXXpjKY9y4cfbRRx9ZyZIlbdeuXVapUiX348fxnWfPnm3z5s1zQVKdq3Hjxi5o2rp1a9/F3e7cudMFURVQTU5ODgXBCxUqlKpfTj7QHDU33a5du9Zdu+5Xq1Ztn2nJWH4TJkywZs2aufsnn3zyPv1efPFF27Ztm02ePNlq167t7j/55JP79Hv++efts88+s9KlSzsnud9+++0uEP3ee++58StWrGiLFi2yRo0a2WuvvbbPGGxAAAEEEEAAAQQQQAABBBDIeQGC0Dn/HDADBBBAAIEEC6xZs8ZeeOEF69Spk5122mnWrl27VEHUI444wgYNGhSahQLMyrqNbDt27HDHKytXgevChQu7YHRkPwViv//+exckVb/ixYu7bN1oQejzzjvPBXjr1avnAuTNmze3t99+O3JIu+qqq2zhwoVWvXp1W7VqlSlQrX5Vq1ZN1ffLL79027V/9+7dbl+3bt3szDPPTNVv5MiR9vDDD7s+CjLrmi+66CK78sorU/Vbt26dC9grQ7xu3bq2bNkyd9unT59U/fRA25SdrGD+/Pnz3f1oQWgFjn0Ws+wVXFZQWk7h7bLLLrNrrrnGbZd1eDvjjDNCD+UxZ86c0GPuIIAAAggggAACCCCAAAII5C6BQsEb1JR3qLlrXswGAQQQQAABBMIElIWsQPHKlStNQVzdL1KkiFWuXDmsl7msYL2068cHbhWQrlWrVqp+K1ascPu1b8OGDS6jW/2VdZyf2gUXXGBXX321/etf/8pPl8W1IIAAAggggAACCCCAAAJ5SoAgdJ56upgsAggggEBGAnPnzrUGDRpk1I39BUTg999/t969e1v79u3tlltu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HjOV46AhgAACCCCAAAIIIJDfBAhC57dnlOtBAAEEEEAAAQQQyBMCH330kd15551urm+88YadeOKJeWLeTBIBBBBAAAEEEEAAgcwKEITOrBj9EUAAAQQQQAABBBDYT4EXXnjBnn32WTfK559/bocccsh+jsjhCCCAAAIIIIAAAgjkXgGC0Ln3uWFmCCCAAAIIIIAAAvlQ4J577rH333/fXdnIkSOtVq1a+fAquSQEEEAAAQQQQAABBPYKEITea8E9BBBAAAEEEEAAAQQSKqD6z99//70lJSXZ9OnTrWjRogk9H4MjgAACCCCAAAIIIJAbBAhC54ZngTkggAACCCCAAAII5HuBrl272vjx461MmTI2efLkfH+9XCACCCCAAAIIIIAAAl6AILSX4BYBBBBA4P/ZOw84KYr0DX+77JJZcpAkiCIISDCACcGIWTEnzJxnuMNTTz39izncmU7PLApizmJAxAgIilnEiAKSc1zCLrv86ymtsXd2NsGGWfb9fr/Z6emurq5+umdm562v3hIBERABERCBMiKw995724wZM6xJkyb2+eefl9FRVK0IiIAIiIAIiIAIiIAIJCeB1ORsllolAiIgAiIgAiIgAiIgApWfwMqVK61bt25egG7Tpo0E6Mp/SXUGIiACIiACIiACIiACm0BAIvQmQNMuIiACIiACIiACIiACIlAUgZ9//tkL0AjRHTt2tAkTJhS1i7aLgAiIgAiIgAiIgAiIwBZJQCL0FnlZdVIiIAIiIAIiIAIiIAIVSQDBeb/99vNN6N69u5+MsCLbo2OLgAiIgAiIgAiIgAiIQEUSkAhdkfR1bBEQAREQAREQAREQgS2OwAsvvGAnn3yyP68+ffrYqFGjtrhz1AmJgAiIgAiIgAiIgAiIQEkISIQuCS2VFQEREAEREAEREAEREIFCCNx777128cUX+xL9+vWzZ599tpDS2iQCIiACIiACIiACIiACVYNAWtU4TZ2lCIiACIiACIiACIiACJQtgaFDh9rw4cP9QQ488EB76KGHyvaAql0EREAEREAEREAEREAEKgkBidCV5EKpmSIgAiIgAiIgAiIgAslL4LzzzrM33njDN/CII46wu+++O3kbq5aJgAiIgAiIgAiIgAiIQDkTkAhdzsB1OBEQAREQAREQAREQgS2LwLHHHmuTJ0/2J3XCCSfYrbfeumWdoM5GBERABERABERABERABDaTgETozQSo3UVABERABERABERABKouAXyfp0+f7gGcfvrpdu2111ZdGDpzERABERABERABERABESiAgEToAsBotQiIgAiIgAiIgAiIgAgURGDFihW2++672+rVq32Rc88916644oqCimu9CIiACIiACIiACIiACFRpAhKhq/Tl18mLgAiIgAiIgAiIgAiUlACZz2RAh7joootsyJAh4aWeRUAEREAEREAEREAEREAE4ghIhI4DopciIAIiIAIiIAIiIAIiUBCBL774wo466qjY5uuvv94GDRoUe60FERABERABERABERABERCB/AQkQudnojUiIAIiIAIiIAIiIAIikI/Au+++a2eeeWZs/X333WeHHHJI7LUWREAEREAEREAEREAEREAEEhNITbxaa0VABERABERABERABERABAKB559/Po8A/cwzz0iADnD0LAIiIAIiIAIiIAIiIAJFEFAmdBGAtFkEREAEREAEREAERKBqE7j//vvtlltuiUEYO3asdezYMfa6uAs33XSTjRs3Lla8WrVq1q5dOxswYIAdeuihlpKSEtumBREQAREQAREQAREQARHYkghIhN6SrqbORQREQAREQAREQAREoFQJXHfddTZs2LBYnXhCN27cOPa6JAuzZ8+277//3urWrWs1atSwJUuW2Lfffmuvv/66TZ061S6//PKSVKeyIiACIiACIiACIiACIlBpCMiOo9JcKjVUBERABERABERABESgPAlceOGFeQTomTNnbrIAHW03mdSI2T/++KPdddddfhPZ1suXL48Wiy1v2LAhtlzYAuWKU7a0ytCWjRs3Wk5OTmHN8ttyc3MtKyuryHLFaVuRlaiACIiACIiACIiACIhA0hGQCJ10l0QNEgEREAEREAEREAERqEgCmZmZdvzxx9uoUaNizUCALu2oWbOmHXXUUda1a1df9fTp02OHIEt6yJAh1qVLF+vQoYP179/fXnrppdj2sEAbaWsoR1mW33rrrVDE73vaaaf5ddRDGSZUnDx5cqxMWMD7OpTp1auXXXXVVQaPED/99JP16dPH7rnnHrv11lttp512sm222cbOOussW7x4cSjmn7/66is7//zzjXrat29v2223nW299dZ2ww035ClX3HPNs5NeiIAIiIAIiIAIiIAIVCoCsuOoVJdLjRUBERAB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u+GGG7ydR69eveyLL77w27DkoA0liTfffNOechOt4hVdo0YNmzNnjk2ePNlX0bt371hVWIoU51xjO2hBBERABERABERABESgUhKQCF0pL5saLQIiIAIiUBEEyNjt1K6dSYAuPfq13YSOT913r738/gcSoEsPq2oqhEB2drb3f37jjTeMiQe33npru/LKK22ws4cp60hJScl3CLyTDz30UHv99de9tzNCMNnDCLh33HGHt7DAN5oHgW1GEKG//PLL2PpQMdsRmwcOHBhWxZ7PPPNMu/HGG/1rsp6vueYan6EcCrAfftNkiAcBmgkMb7311tiEhonOIezPc9iOrUfIto5uZ8QDxw1R3HMN5fUsAiIgAiIgAiIgAiJQOQmkuKyJ32cPqZztV6tFQAREQAREoNwITBg1yjrWz7AMN/RdUboE0ttvY9X+8KQt3ZpVmwj8SYDJ9RB58Sd+8cUX7cgjj/RC79FHJ7e3+5IlS7w4jHAcPJw5K/6NJzt6zZo1lpqa6jtyKBOE4HDmCO0EovsG589OfWRPx5cL5XNzc70VB5MnBv/psK0kzytXrvT2HjnOhgfLEOoj47qwKOhcC9tH20RABERABERABERABJKfgETo5L9GaqEIiIAIiEASENjoJupa/91UMyemKEqfQErt2lajk/OqdUKaQgTKisCAAQMsKyvLLr74YjvvvPN85nG/fv3K6nBJU29UhE6aRqkhIiACIiACIiACIiACVYqA7Diq1OXWyYqACIiACGwqgZwliyVAbyq8Yuy30WVybli40NJatChGaRURgU0jcMwxx/iMYgToBx980KqCAL1ppLSXCIiACIiACIiACIiACJQuAaUblS5P1SYCIiACIrCFEshds3YLPbPkOa2cBfPtsWHD7LvvvkueRqklWxSBk046yT766CNvwUFWdFUJxHa8nRUiIAIiIAIiIAIiIAIiUFEEZMdRUeR1XBEQAREQgUpD4Pnnn7dt09Ksc5vWlabNlbWh2x99jDF52tChQyvrKajdpUQAP+HrrrvOXn75ZevYsaP3cj7wwANLqXZVIwIiIAIiIAIiIAIiIAIiUJ4ElAldnrR1LBEQAREQgUpJ4JJLLrF3Jk6slG2vbI3etWcPZUJXtotWBu0lG36PPfbwkwcykR6vBw8ebNdee20ZHE1VioAIiIAIiIAIiIAIiIAIlDUBidBlTVj1i4AIiIAIVGoCZGMSGXXqJO155LhJE7NXrbTslSsse/Uqy1lbuHUIZbOWLU3K88moWSsp26VGlR8BBOfjjz/eeO/l5ubmOfCjjz5qjExQiIAIiIAIiIAIiIAIiIAIVC4Cmpiwcl0vtVYEREAERKCcCQR/4k7t2pXzkQs/XOa0n23dvHmW7cTkjTkbLKV6DUtNTbXcnByr1bqNrZ87x2q03dpqtWpl1Rs28pWtc+tWfP2VZS1aaE7ds7pdu1nDnXct/EDlvLVT+/b2v6eeKuej6nDJQgDhOQjQBbUJi47ddtvNWreWPU5BjLReBERABERABERABERABJKNgEToZLsiao8IiIAIiIAIFEFgzW8zLXP6r5beqJHVymhnqWnplr0203IzM81cFvS6ObNt7Yzp/nm5E6VrtGvvBer1bj1Ru8N2lpJWzZa8947lZK6xJnv38+uT4o+zXlBUTQLFEaAhQ7lzzjnHnn32WcvIyKiasHTWIiACIiACIiACIiACIlDJCEiErmQXTM0VAREQAREoXwKzZs3yB2zdvFm5Hni1y3TOWrzIUtLTLXd1pqXVr2+5G7KtRrPmtnzyx5bqMp/Xz5lj6fUbWFrDhla9gct2btDQajRp6rKi0y01vbp7pNvKb7+1JWNH27qF861h7z2s2WFHWIrLmE5JSTGnTNvqqd/a/KWLrcFue1rNFi3K9RwTHQzbk86dOiXaVKHrsIAYNmyYbwO+xL17987TnsMPP9yysrLyrAsvbrzxRttpp53CSz0nIDB79mwvLP/yyy8JtuZf9cMPP/iMaQnR+dlojQiIgAiIgAiIgAiIgAgkIwGJ0Ml4VdQmERABEXAEbrrpJhs3bpyNHDnSmjZtGmNy8cUX29SpU+21116zdCcyKsqWAFmX5R3LPv/UcpzwvDE7y9bN+s3SGjSwtbNm2kaX5by6Rg3bsGKFNdn/QKvXqXORTcvo2tUWvPiM1WjZxur12slSq1WL7dOoz+5exF4+cYLNe+ZJS3OZ1W0GnRHbXhELK1029/dOYEy2ePXVV+3777/3zXr77bfzidALFy70IvR658+9evVqX65x48b+OTs7O9lOJ6naEzyg17r7u7is8IqWEJ1Ul1GNEQEREAEREAEREAEREIFCCWhiwkLxaKMIiIAIVBwBMgMRveJFmV9//dWvj5+wq+JaumUfGe9ZAnG0PGKV62BY5+w2yFQm27nF0cfaVkcdY61OOtUa9tvH+UDPtQa771EsAZr25qxbZ1ajpjXZa2+r4zyi46Ne5x2szVmDrfnAYyxn1Sqb/cSI+CJV/nWmu/bjx4+3fv36GcLy2LFj8zH5+OOP7YsvvrDHH3/cbzv33HP9a9b16dMnX3mt+J3AmDFjfEYz4n38Z11RjPgMDAJ2RXQWFdU+bRcBERABERABERABERABEfiTgEToP1loSQREQASqDIENEd/d6PKmAti4caPlOO/hLTF22GEHGz96tHUup4kJ1y2Y5+wyqlnO2jXWuO/elp5R32PFQqN6kyZWzdls1O/es9ioc50InVazlmX0KHyf2k6gbnPG2bZh6VJb8Nablr1qpa1fssS1Y22xj7WlFkRgJvr27WsHHHCAzZw50+gMUmweASxOBg8ebPXq1TNE6E0NCdGbSk77iYAIiIAIiIAIiIAIiED5EagSIvQc55l5zz332PLly8uPrI4kAiJQqQmsWbPGHnzwQfvpp5+S/jyYoItMyyVOMAzx6KOP+nXYBhCIZpS54oorvJDWvXt3GzVqlA0YMMBYDtmblH3jjTds6623ti5duvjtcJg7dy6bYgEX6uOz9dZbb/V+t9tss42dddZZtnjx4li5LWWhTfv25XIqCL/r3ISCqTVrWrMDD8p3zGq165htzLVM5xdd3CBbdKN7FBVLJ4y3uc8+ZSm1atn6mTNszuPDbfGbr9nyzz+zJW5blrMAKY/Y1d13RBB+y+OYRR3jgw8+8EV2331322uvvfzyhAkTitpN2wshwGfUJZdcYr169SqVz4wgRPOsEAEREAEREAEREAEREAERSD4CW6wIfdppp9kjjzziiT/00EN22223JRw+m3yXRC0SARGoKAL333+/nxiL43/44Yfek5nPj2QPBOJ58+ZZNKN5hRMMWYeNAME2Xj/11FPWoUMH71l74YUXWs+ePf3yfffdl+c0EYa22morb/uBNzWWFMEPl4JMwEZ9L730krFvfTdpHvHOO+/Yk08+6Ze3qD8RH+WyOi8mEJz/0gtuAsEF1thZZySKas4PusGefW3xmNE278XnbdUPv3sUJyob1tVwPs/pdeva0kkfhVWW6zyKN2T+7lvMyhXffO0nO6zeYitrfcpp1vbc861+n92seqvWlr18mWUtmG/znUC96sfk82qOnVQZLZDlT8dMXcdw++23j3lBv/vuu2V0xC2/WsRnJnc89NBDbcaMGZuVBR2lJSE6SkPLIiACIiACIiACIiACIpBcBLZYEfqzzz6z0W74NLFo0SL/3LFjR/+sPyJQFgRWOS/Vu+++2+gAGTZsmBfpNvc4W6q9QUm5TJs2zWfMHX/88ZudMXfHHXf47F4mtIoPBAwyhxkWHj43EJ0qOvCWPfHEE2MPPGY3NRCXyUBEUGP55ptv9stREfuQQw6xl19+2QvKMLngggv84RIJ8lgSPPvss/b+++9bEOWYMHFLi5QynAAye/Uqm+sE5bUzp1v2ksVW3VkT5GYVbE3QqPdu1vLU0y0lLc02rCnapzp75QpL36qlZf4yzWY99ojNuPdum+keSydN9Jdp7ZzZTtR+05oddIg1d49qLhPanPDacKddrOk++1mDnXa22tt1tLrde9iCV160ZZ9NLtPL26pFczvzzDN9pn2ZHqiYlf/4449+lAE2HKnOEqWJs0Tp3LmzkR0dOnmKWZWKOQII0NhwMMHqlClTbKmzfynNwBv62GOP9V7RpVmv6hIBERABERABERABERABEdg8Ammbt3ty772OyZhcBN/GbbfdNrkbrNZVagJYEowcOdKfA+IEP7JHjBhhzZs336Tzwu5g//3391n8/KCuqvHll1/akUce6U//uOOO84Lp5rCYNWuWz+g98MAD/URjbdu2zVcdIvRvv/3m1yM2VXR8/fXXpdaEjIwMP+FdDZdRW6eOs3ZwwfLq1X9mxbIOUfrnn3/2NkY77rgjq/JkQvsV7g/Z0mHSNT5jec1+2JnUrl07FKv0zwhb61xWecYfzErrhNa5TtJFo193swfmWB0n9DZwAvOC11+1JR+8by2OHFjgYchubnHEUVbU5JSLnY1G5tQpLvM5y7DyqN64iTXqt6/Vat3aUv8Q1pe8/67Vatfe6roJChNFTSdg8/DhxOkVn0zyr2u5LOmyiNYtWtjQoUPLoupNqpMJCQkydm+44Qa/HPyLP/nkE9tnn338Ov0pmgDfi2+99Zb97W9/s8cee6zUBejQAj7Pjj76aLvuuuu8IB3W61kEREAEREAEREAEREAERKDiCGyxIjRCCCIKgeiEv2kQXCoOd9FHnj59us8qZJh8ZWhv0WdUNUpgdRAE6F133dXIisa64IgjjvBidJs2bUoMgmx+Ak/z8o5kuQ/JMvzrX//qT//KK6/0E1jFs1jrJk3jvY5ICOfGjRvHF8nz+pprrrHZs2fb5MmTfSYeokiIZs2a+UUy84KvMT7HFR2TJk2yli3/EAFdY4466ijbnGzoos6H7OgHHnggX7EgvEU3BIE6rKtevbpfxMJgSwp8t+s4X+X7Lr+sVE8r09lpbHTWGFsdfaylN2jo62424BCbM/Ixy3RZ5nWKuP/IzC0oln3+qa2cPMnq776nNe6ze0HF3PGzrH7ffgVuDxtyXMcuEyKumTnDVnz5hZWVCJ1SLbn+NcFihuA9F/++o8NRInS4Qwp/5rOWLGg6qxg1VNZBRxjH4zt0yJAhZX041S8CIiACIiACIiACIiACIlAEgYJ/vRaxY7JvxqP0//7v/3wzydJDlC5pkGFGHYcffrgXFBG7yjrIEMKXlgnDFJWHQJgQbrvttrPnnnvOXnnlFZ99hThKFjMdISUNRFWCod/lHclyHyLsw3C//faLeTUHFgiiCAydOnWy/v37e8Efewke5513niHcJhJC8S7+97//7atBiP70009DlUbnD+/51i5LtFu3bn59w4a/C4OxQpVkYdmyZZvUUiZbQ4AmA5xJB998803vI71JlW1BO3EvrfrDX7tUTyslxVJdJnoQoKm7pssEbrj7XrZg1Mu2yGUpZ7oMXCw1cpyohpdzQZHrOsNmjRwe821e+elka7zvAYUK0NTV7ODDrU7brQuq1vtOJXCHJwAAQABJREFUz3n+WW/lsdp5Qtdq2dqy5s8rlh91gZUWtqFa8vxrgrc6EyTSGYVPfHiMHTvWn0GY+LOw09E2852xfF4T2CuVZ/B5hpVT+E4tz2PrWCIgAiIgAiIgAiIgAiIgAn8SSJ5fen+2qVSW8H8mW5C46667Ylk3ZKdeeumlxhDaooKht48//rgxFH7cuHFe7MIaoCwjeAAvWLBgsw7D/ngTI6gVNVx7sw6URDszGRpetmV9jRKdcvAP3mGHHbzVQc2aNe0///mPFzWDEL18+fJEuxa4Lvxgbtq0aYFlympDUfchmd9kJp9yyillNpya+zZ4ECNepDixLhrYlUSzmPE4JugQYBKxE044wQ466KA8k/WF/du3b2+DBg3yL8MxeNGgQQM7++yzLc157Z5xxhn23nvvWS38cZM8gt99uPfpMCNDc1MiZHqefPLJvgOuS5cu3gd3U+rSPkUTqNGqta2bO8fWzvotT+FGe+xpbc/5i613fs2L3nzNZj82zOY+/URMYM5T2L3IWrbUfnvofkutVdtqt23nReuN7n1ab/tO8UXzva5RiGXQiq++tJVTvrZq1atb/R49rVb7bSyjRw+r5mxdspYuyVdXqawoJLu7VOovQSUI0ATZzu3atYs9eM/169fPd5LxWUScddZZ/nv36quv9q/5fOJ7mMc333zj11XFPyEDurCs/bLkwuch/8dJiC5LyqpbBERABERABERABERABIomsMWK0NFTr+cmeQq+vJdddpnPVE001Dy6D8tREYcJiYgw8ZZ/UQZ/gvhHlhXDVRHfBg8e7G0DsEgobvCDi/YjojMRW1UI/CW//fZbLwTMnTu3XE+ZbLn4QDRl4iWEWoRoJm8rSYRM1qLsJUpSZ3HLFnUfIpA/8cQT3lMZu4zsQrIzi3vM+HKIoQjKCD2JfJnJgMaH+6OPPrKZM2fa1KlT/fW//PLLY1UVloEebD7IZAy+8bEd3QKCSYcOHaKrknZ5wIABvm1/+ctfvHi+8847x9r64IMPWkkmCsSHnLj33nu9H/n111/vhXlGk8Dp/PPPT+gNHTtgCRewPiHjnc+8RHYfJayu7IqXkb1IXdchgt8yYm80NmZl2aqp31p68xZW3dnEtD7jLGt15jlWv+vvGfqUxcs584+s0iUfvOc8n2tbq2OOcxML1jTXa+MeZtlxXt/RYxS1nOt8qlc6S49U1ymD/3TD3faw6m4kQXq9DKvRtJllfjvF1rv3aGnH9+67bo899kiKzFU6oAnaEx977rmnX8WoCwLbDr53+R4i+PziNY+SdkL6Cor5hw5zLMf+8Y9/2FdffVXMvcqnGBOb8n8MdkIV2SHOiBZGM2CroxABERABERABERABERABEagYAlVChI6iLe4PQTI9hw8f7ncluymI2AhdpRl43t5222120UUX+azDIBjzI/b222/3mZ5jxoyxF154IfbDtjjHJ2vrqquu8kOIGVLP+SQKMqZ/+eUXNydWTqLNlWod53nooYf6H/7lbWdSrVq1hKwQosmCIxJZQyTc6Y+VCxcu9EuN3ARkZR0lvQ9p0yOPPOInpCNTMIgupdnOMNw9CD3xdae7SdXIdsY6gxEOWGxgnXPLLbfEivK+Iqs5USCKhAkfn3nmmURFKnxdfPZ3aFDIKAzb+/bt6y1L2E729l577RUTW2CDMBXKhjp4jr9vKYPgDze8nXlPwQZ7k912283v+vrrr3t7mUT1Resuansoy72EWHfjjTd6K5Vzzz3Xd3DwuVQVAt/nDa5Tp3rEdgcv57kvPmfLP3aWMu6zO8tNXjjvhefQlPPE2nlznW/079YGa51wW6P1n97zCMXVXFb00vEf5Nkn/sXSjyfa0okT4lf71+tcFna262BrtEfffNub9N+XG8iWuf1LO1ZnrvG+7QiYFR3cl3RyJfJ9RtBkW/iMZ7mgB+/Rsop2LkObz2MyspmHgLbSAV3RQWcl2cdEeXcMx587xz/44IO9tUoy3Ffx7dNrERABERABERABERABEagKBFKcMLaxKpxoOEcyBhFl+JFG5mwIRNioIIOQw3B8Ao9UBCs8IfH8DZMUhX0355kfisG7OloP1gJHHnmkde/e3duAcNxNtQUg+yiIVswYz7lhRzJ+/Hj/g5njXnDBBd6mJNqGyrocPd9wDojwnDO2GUykVpqTzZGFRtYuwh0CQKIJl+i8IKsWm47iBoIqGe0IiCX1JeZtXZAIyI9xfJDxRsYvnTZtzn2YiDfnyKRQvK8YiVDciLYb2xz8ta+99lo7/fTTC60CgQfxJxqMdsCOo7CALdeMbHMmggzvk8L2SeZtwcIlA6sEl0lLhjpiPY+C7ofCzof3C2zgwpB2rg/idEHCfmF1FbVtnZv0Di91HiGzFH/vAw880ItHbdu2LaqKMt1+h8u6/9a9b0pzYkLE38yff7INTuhtesAAq9upsz+H7OXLbNVPP1qK495w511t4btjbcOSxZbepKmlVK9hTfbcy5ebNXyYe13dWp90qrfpWO0ykzesyfRZy+kZ9f26xc7Ko+VJg6wgy42FY0bbutmzrPnhR7ns5rzWPwvffsvWz5xhbc45NyHbdfPn29ynHrc2g/9q6XWL/z5PWFlk5ePuO+rGe+/L956OFNFiAQSeeuopGz16tLcQo8gxxxzjbaEQqss7+Ox+9NFHrYXzOJ/v7pWKDD7H+KynPXT8hw7IimyTji0CIiACIiACIiACIiACVY1A4hTBLZgCE5whQkfj888/9/6wZPsx1Jx4+eWX/TPl27T5M7uMoePRQIBDmIkK2GE7P7qoh+c6der44bJHH310HgEHD2ECkZksXgRN9kGAJgOrNCIIawUJjfw4C5nepXG8aB3MSo/IyTHiA49M7E3ITseLt2fPntbPWS8UFSGruyAhLJxvqAchlw4Fsi1DIGoOHTp0s0VH2rL33nuHam3KlCn++m277bZe6Oa6E/jqEh+4YdkM7+Y+COv8hj/+0MbAKmSCFiVcB4uYfffd11atWuU7FDgOQ7P//ve/x6qnrdddd52NGDEito5j4aW9OfdhlDfCJ/Vj/wB3AhuHE0880Y477rjYBKG8jyiDhzcTL5K5fsUVV3jB+sUXX7RWrVp5kZz9EfiLEqHxeI4XoRkCTmYgmbU1atSgqnzRw3nbkvnLZwLt5R6szIH4HAKxmMfmRNSPfFM7wYp7fO5zMtt5cP+++uqrXpDm+jNChA4FMhkRpSsihjjbmax99ym1Q2NjkTntZ6vVrr3lukk2FzkxeL0T/bOcAJ3mWDTas6/LZP7djzzLZTx7ew33fbPa+TNvWLbUeT/XsvUL5lnzI4/xbcL7uaZ738x6+EFb4zpk6nfb0ftBL33/XVs4+nVrPegML2rHn0CzAw+y+a+676lXXrStI2LzOrKsv//OGvV3Gc8FBBMo1mzbzmVbj7PmBx1SQKmSry6TCSBL3oxKucdJJ51kPH744Qf//UqnOd9ReFjzPcgkrpsyUfOmwKBTjM+kihagaTsdWgjQdIpW1GfIpjDUPiIgAiIgAiIgAiIgAiKwJRGocpnQYYKcaCY04jMTmZEd+/777xtevIhTBIJaEEYRDckkDmLXW2+95T1/+VGDf+pOO+0UuzcQUcIQ3dhKt8CkZ3jWkpkYAnEwCKphv4EDB9qdd94ZimzSM4ImbWQ4LBmpYfIyKiM7Cq9isoITCejFPSDZxWRY7rrrrt465OabbzbEUCblwz+W49COl156KQ8fJotMdH6sDxNKxrcBX+X777/fECm5Dvgtc+0CO8qT5Y2wSgY5QQcDLEOQYc6+BOJrQVYPoXxxnkPGcqKytAV/XoZt77LLLl50xbqCzo5//vOfeXaBJUIt91zXrl1jvPDkpc38oCcjulu3bn57EBxDFjBDjP/2t7/lydTH0oLrzj1GtjsZckSUAz/O6fgo6X1Ili378f5o5jxr6VRA9I76K3P+QfznmJwbPBCdL7zwQl8eUYROlxB0xvB+oq0IyMTkyZML7ShZvHixv/Y//vijbwflQ8Dyvvvu851AYV30Gb4MZS9OxnV0Py2XPQE6EciMfvPNNy144tNpEARpOu/KK3JWLLfsn38utcMt/vADy5z6jTVzGci1nI0Gr9c6aw06NTN27WMNIt7Ps5950mq4LOim+x1gK6Z8Y5k/fm8bnSCd0aOX1eu4faxN2atW2uxhD9tWJ55iNf+YbHCds1xaOOplq7NdR2vcr2AR/bdHH7ZU11nT+uRBvj48pnOcOI5IXVisdp/zZFuTLV2tgM6ewvZPtO1e10F19/ARse/aRGUSrQuTCCbaVpbruGbFCb4redBxF55DJ16ideG7OWwL+8Q/c2zKhHI8h3WU5b3DyCc6LBn9wf8yfGfzWcwzljhhf79jKf3hO4vvtPiO/1KqvtjVNHLfm1nu+4rvUSailQhdbHQqKAIiIAIiIAIiIAIiIAKlSqDKZUKHzL4gRM6YMcML0FANP/iClyICWlSkJJsy7IcYGrxnWUfWJROcIS4jmIRJzxCATz75ZJ/ZibiG2IVgxwRiIaIiam03sRRRXO/qUEeiZ9qBLzQTFnEeiOKIgASTufXu3dsLmon2Le46RGPER378I0AjOGKhcOWVV/rs1SBAMoldEOmD6McxmCiSDgF+xGOVMmTIEGvnhg3HZ6QiLiNaBv7si2c2GcVk1SLIcp6UQXRFHCUreNCg3wUVhFbKkzHLMZkkkGsfvb7UuSnBsRBVaTvBD3usBRCbOX88vXkgngfv5EQT7QWBGJ5Rca0guxbuU5gGuwvsQIJVTBB/v/zyS8+D+zXUTzY09+Ts2bN9hhxCH1HS+5BMbSwzEL7pEHj66adjAjQdOsOGDfMdO/iOY31DG7he3JcI0gT3IeUI9kHADlYMiOtBLKfNCNMFBdnUiB0hENTpUOL9xr1JxwaCPFziI7AOHtzx2/W69AjQGcbokfAcluNfh/VkctORxfXjXiYrmo4lMqN54FPNgwzpcB1Lr7VxNW3IiVuxeS9T3O7pzZp7AZqamuzdz4xHgkhzFhzrFy7wW8hw5hEf611HzMLXXnGZyVvHBGjKIEZXb+Tu+7Q/Oz7j9+V1m9POtFkjHrXp9/7X2p5xTkywXus+w1Ky1vvJExPtV9e9bxdXq2Zrpv9q9f6wE0lUrkTrnHBa0qAjmU5JRdEEsIfiEbUkC3vRYccIldIIvpf5f4BO2IrqIOA80tz/ZUtdcgE2HBKgS+PKqg4REAEREAEREAEREAER2DQCVU6EDt66YWKaqOUFAjXCJZkyBENXo8IcHrqIitEsXnwFEfcQzxChEXaDAM2kXmTJEgieZPISeAYjTmNBER+IL0R4jt9ektdhKH4QW8n0RHRlArefXUYfAiLCIAI6P8yi51qS4yAMn3nmmbGMV/Yl65aM8SAiIhwRZHojDLIeOwaER4IM9RA33XRTnte0NfhzI/AirCM0Y/WB7zDiPvUh3hJBVEWQpW0MPUboDBP8cb5YrGC1UhpB5wU/2hGhETkRmwmEdYYhwwErg3CubAuZ9iwTCKCBAZlp0aBOeCKkUyc2IlhHIDp/+OGHsfsKoZtAWMDaAAsMRG/EWbK+CdiFDH3EfgQHBMD4CPdfeI7fzutwf4XM5yDwwpvM9/Bew+qF7H/Ecu49PEtDhwQ+zATnTEcFw8hZh3DNfrw/ya5mMjyuV0FZ8r6SyB/u5f3339/vQ8b9f//7X98xgk90fIQOH+6h0gqOyedEyC4MmYvcK9FsxWpkRMZlRVKG8uE5Wj66PtTFMxGOFcpvyrlwf3E/hHsCMT8IxOGZeyKUiZYP63mOLkf325Q2FbYPHRY8+EzlvsO/v6xiY27+98nmHCt78SJLdeJycaLBbrvbPDdR4RJne9F4r755dlnlPh+Xvf+O5TihuF63HlbffU5EI8d1iOETbc7Co7BIcfdRmzPOtgWvvWozH/if1e3SzVuFLBv3gdVs07ZAEZo6azgxfeU3X5WaCH26+8w66LjfJ7QrrM1hGzZICNBk/IZ7L9x3ie7h+HXhfg77hNfUFV820bpQPuwfLRO2sY4OO+pjFEn0ObocthW0jvXFeYRJjgOj4jzzWRK+J4tTvjhlEKLp9OU7mBFSeMuXZ5AFzTH5Py3YTpXn8XUsERABERABERABERABERCBPwlUORE6ZI0iTpJJinAcAuGOdWxDkApZtGE7PyaJYCOB2EcWL5nNZGliAcAPTQKhLwjQrAtZ02yjfsQwhLn4CDYdiKshEMYRORG3ERaLG0EUDNm3CFgHHHCAt8sgawwBkmGy/HhHIKU9m5olFLU/oH0M/SUzGWEVRgixcAiZuoiRQZRd4SblIks5BHUhVvdzNg8EmbME54NQGbxpyXzE95jgGvADGnGZc0KgnjVrlt+G8B79YU1ZMqZLM8J1o5OC+4S2wBthjAeBX3KI6A9xRAfEYe4Lgkmc2DcE2VswDEFnAvYVMEWsDdnmbCfLnLLhWGSOIliEDhCufzQKyngL51PYfRiYhg6GIIZSZxCgo8dCsCQ4X9odgvvg4Ycf9r7NtB0Rmiw9RGjOkwzY4cOHe5Gfe4hs6uIGHBHrESoRIciaD+0OdWDhQTD5aGkFQjCdHUEYhk1hy4m2h3Xhmf1Z5gEHHkH0Cs/RdQUtF6cs+3K9eCbCcvSZ9dFybIs+wrawT7R8WBctX5x1oT08c29yPenA4b1Dhw+fL6XVuUR7ozF79hyb+e1U6931d3/36LaSLue69wDez3U6dsqzKxYba377zeq4DqJo1NyqpdXfpbetdhMPptSsYY3ccojFb71hdTrvYHW27Wh4NFdz32PRQBzOzcy0Rof+3iG68J23Lc151TfabY9YsY2uPUsnTXQ+1HtZi8OPtJU//mBrpn5rCNA1XGZ1UZYctTtsa8s//cTfD9ynmxv1nXDZ2FmUFDewKELoJNs23EfR+y+sC8/Uy/ZQhuewLpQJ23gd1kWfo+ujZcNyeI7uQ8d09H3MMh1m4T0efQ7v9fBMWT6XGZEVv090v1AnnbPxx4rWxXuHzkIylRmBxaR9jJApq/khzjrrLD9qARuw6HeWB19Gf2DVyP3fwAiw1q1bl9FRVK0IiIAIiIAIiIAIiIAIiEBxCVQ5EZph+yGCzUGwqcDygQdB5imZz9GI/nAioycIg3ggI0Iz4VyYbA6BkB95iCO33nqrF8AQtvEyRZglA5lsULI1oxHsQqIi3aeffuoFRzKCSxJBhMZrOMTcuXO92IZAfthhh/nzJWMKoXrw4MFeDGXo7KYElglXX311bFcEfX7QdurUyQuLHDvTiSEEQjHcEBux7kAkRVTm/CdOnOgFcTJmESix0CDgT3Ypw+9/c0INoiJliTDTPcejbjKFg/gLb7KIybItq0DspK1kBSOGMbFefJA5TDsQhhFG//e//3lxgwn5okOV8exEEKD9cHnhhRcMawqEBwR7Og8I7icE5hBk14eOE46FLzYcEKS5F+CHaM+9itBdWBTnPgye1LQRITDcb9yviOyhswCxkEnmeM8QdKRgYRKCyaLCqADEJALhOby/uKcWuQnb6Dih/Vxf7D+on3Pi2Ntvv70XXEKd0WfEoGBzw/syKkLznkWIIWBcWhGdELK06lQ9ZozqoIMKb9uQRU+nB++XTe1AKy7X/7oRMrPd8Xt3va64uxRYLtu9jxGLU9J+z2L3VhqjX7f1c+dYqluXUrO2t+nI6NnLajsRmGjUezfb6LKal7ts6PQ6da3eDl1s3ZzZttF9BjTb7/fOJTycl33+qWV06RYToxs6f+mM7j1jfs3r3DHS69bL07ZM975Y9e03Vt110GGpkeEmOeRRUOAzjejc4g9hO9WdSzUnbK9yInn9HX/34y9o32Ktj3TCFau8K9SnT5/iFq2y5da7+4P3Do/33KOX+x+EDnK+i8sjyETm/cuIJtpSloFgj60XHZzhu6osj6e6RUAEREAEREAEREAEREAEiiZQ5URospKiweRwp59+emyyO7aRwYu9RDSYYCdkqiLgRv1nEfsQDBEgg9cvP7SivsYIdFgisJ3sHDJ6maSQbEn8oYO1QRD/EMuoAwHtmmuu8U0Joly0XYUth4wmsp8IBEsE3N13390PC2aZH5/Ui1CLPccNN9zgxZy2bdsWVnW+bfyoJIsqiND88Gv3RzYf9SMYYYFCliKiHxlhPEKwP2IkQitsEcURycmQxu8Vv2EEZzLIE1kqIMASIZuVc2Y/hgAjWiL0IopzvlwvhHGypqMZx6EtRT1zLyCoM/SbTgt4YhPBBHjcA3glJxKhqRc+ZIJxfv369YsdinuOTgnYcK5kACO0cn8gvvKgDPdFCGw5QvsRpOMz67n/EKERhelwwS6E64BlDFlytBsO3JNBpA11F+c+JMsuCOXw5nrR4cIx99hjD38+cAqZ+NQ9cuRI/74g+46gTaGTgdfh/QNXzp+gbuwWeC/Q8cC99cMPP/jsaNYPd1nSvL/oiGB/rivt4v3K8RmxwHsJRkHkJnubewOuBKMMouK0X6k/SUGAjiuuEyMi8PkmuL58biI+h46/sm7sHNfZUlqRtWSxM4ROx4jdmNhv2Th3Xu7+3vqvF/hDrHMjOVY6QReLjGg03ru/pbrOl8Vjx9h61zFTw2Xvb9yQbVhuIGovnjDOsmbOsPo9d4ruFhOgWeknD4wTeVe7iQ5ZX1xP59z16yxr4QJb6SZJzHD+1Lmuoyu9QUNzPUF5jqsXyUGAzz+EZ0YK0HF36qmn2tvOIz98zpdnKxGEscziO5/OxbII/o/gsyE6wqosjqM6RUAEREAEREAEREAEREAESkagyonQdVy2VhDOmPAKKwqEPHyKEYUJxFGE4mhg1UGmK1mXZPxGgx88CIBkPyL0IpIiHgbRmuxn7BbCcFDsFMhORYjDaqGfEyODOEZ2Jz/OEAuDdy/H4gdVSSfRI9uVNiO6Epwn546YywNRE7EUARxPzRAhWzm8LuyZzCbqIssVDpw7omHU9gHOiI9kxyLg44uJeBji3HPP9WJkyJylLD+SES8RIskMRkBGbMQ6gR+uZLSTLY7tByJ3yMLda6+9vOcwntFca4ZoM2Eiwi5iNI8QiJInnHCCF3ypM2QWY3+C0IxXMA+uOQ+Oh8VHuK6hHq4jWdxcIyYojGYnhzLhGWEYL2x+HONzzPUZOHCgF6a5DjAKP8xDdvc1rhOCYwYBmutJRjD3DcH9yv0ZL6Liow0z7BcQyfnxz71HPRybRwjEW2xmgghc3PuQ60w9ZDJz3elcwWqFeyJY3XBt6FggA5p7jmBySEYaxGfdI4og0nPNo8G9ReY4LLg/uO5kSyM4EwgriTononXgC009jFCAeQgyaMlMVyQXAToKeD+99dZbfnQBn8l0IvXv39+/1ypzdmM9l2W84rPJtvyjCb97gldLtdannm5pGb+Pvkl3z7XbbWMbMlf7TOcUd9+GILM5zWUyr3SZy7lue2rtOrbwzddtq4HH2Ppff3Fezl0LHBWw3r1Pct3IhFqt8lpdZM36zRo6gbu4QXY2kx1mTvvJi9Ab3Odlunuf57j2lEZszMktjWqqdB38D8F7B/GZztFddtnFd67Hf+ZWFCTax/9Mr7zySqk3gU5cCdCljlUVioAIiIAIVGECjB4lCSgEv/2iSXlhvZ5FQAREoCgCKS4zOG9qcFF7bAHbEawQ+hjCHzJJOS2EYawDgjVA/Kmuc9lmPBJtR+hDXEQQRRxBiES0RCyNF7RDvfwwZMhoENLCejJJsY5AeCRbFfGOIeeIfCUNzgkPXgRZgnMnkxQ7kPhALESUD2J8/PaCXnOuiHuFRXwZOCPwkq2d6Ly4LZlosJ3Lpo63RQnHQVTESgTBP+rxvGzZsnyexGTEYnmBuIm4FbJzEfZLYzIz2ko7ueYhAz20c3OfuYZkV5MJTEdGQTwSHSeeO6/JjEbA5QEL7gmCLOwwYSCvi3Mfcp2wCIl/TzDUmvVkWCPulyR4L/G+JNM6UZARy3Xn+pMFCxusasi05zpz/RGaEfR5b+24444+K75Dhw6+OhiQ9c97jw6S+IkgEx1T68qHAB1gWLUgTHGf8vnJe5TOJZ6LspEpy1Ye4zL9U9y9M/L6vJ2Qm3rMBa+8ZGtmuIn0st2Egjv2jPkuIxQv+3iirXfCMN7RLU88xWpEbKTC8VZ89aVl/vyjpaa7zqvZvzkxuIet+PxTaz/kYi9sh3LRZ+w6fnvkAWu4+57W4I9s6Rz3WTz9njtt28uujBbNt7zaWZHUwnvfvafdG9QyXcb1gheec9nbF9ryyZMs3U1OmLN6lTWM+FXnq6SYK+51HVsvjX3HPvroo2LuUXCx6GdgdDnRHkVtD/tQjijqe4/vXr7fCvosC/UV9czxqCf6/0qifZgLgVFNiM90uPK/CCNUeDDyKRmDjuJ//etfhXbelqTddOyHDtyS7KeyIiACIiACIlAZCJBMxGjAwoJkLkYol2Zgn0myUQgSqcIIxbBOzyIgAiJQHAJVUoQuDpiKLsOPVwTvMJFiabcHERg7CUQ7sl4REbFmKOpHdWm3Y3Pqw8oBwQqbk5JmifOjnuxmOiPCBJJkidMxgfCNRQRiLwIqD0R8so0RARAvEeyZQBF/ZqxbCprgb3POr7z2RbBF4Egkbpf1fVhe51jZjhMVw6LLic6jqO1hH8oRRb3Hy1s4o03YBCCcYbfCe2vvvfeOic/xVjGUr4gobRF68bgPLddZaeS6zpLmBx3iheNsJ+LOf/Zp2+g6Ymq238aqOxb1One1arXyTjYYzn+tE6qz6HCZ9rNtWOP89l3HzQY34WG1GjUt1QmQue47JN1lLKe6URbZy5Zaluskw+Kj1cmDnH1Gg1CN/Xr3nbb1Wec4X+fEHUY5ro2zhg+zjJ13yTMp4m8PP2A13QSCWIRUq1fPqrkM7cK8pGMHLGLhfy4D/p4Rj8dGfxRRPN/mMDkqHcDcW3RU0ulLRxujIMLkwuxIJxwTuo519hR0/PKjik7N6GgJypGVz3cNHZhhNAzfDWTcDhgwgCKxkVCMDokfdUM7+I4hsJehw5f96ShjpApCcbCT8oXcH+pAoGUeAd4X2IcxxwMTrfLDL4we4hwYlbJ4sbN5ccF3FSM8sKEKx/QbkvQPHYhkL2+uT7QE6CS9wGqWCIiACIhAqRHg/xmSaEKEZCL+pwiJb5uSVBbqK+iZ5CKSRfgfiDmtJEIXRErrRUAEiiJQePpqUXtre5kRQOjkUVaBsEMWaXn5qZbFefAlTAQrk5IcAyGOH/w8PvzwQ5+9HH7QF7cerAF4VPaIt/GInk9Z34fRY1X15aoonCH+jRkzxo9AoRME4Q//8uCRn0z3xA7bdrCNpTmZWs4Gy13pRgt02C6Wubxw9BuWVr+BNT9yoJugMP/XM6IykwCGqNWmrfGo44TT2SNHeEG4fo+dLHvlci9Ak7GMgJzrBGr2bbRXX+cj3TqPAE1diN2I4ojhiSLTfdYiNldzWdcEIyDWuE7MDatWWlrDhm7/JrZ66hRrvN8BiXYv8bo5c+fFrIFKvLPbYYbL2kYsZg4CAnESH3x+oCFEMxKCz346XBCAg9URtkqMqsCeh88+hGGCezSMtqEMwjHfIdg2RUe+3HTTTd5rnn2YhDZ8tjLqJyyzjWA71k8IzTzYl46YYInEj8ogbmPRxY8/bIwQo9nGyBginEMQoOlApYOZyWD5kRjOwRdO0j/YemHPwfmSzV3S4FqRnaXJKUtKTuVFQAREQAQqGwHEXzqnQ2Df+YGb+4GRvQ3d/2SFRXESVxiRygiu+NFX/J/Og/9dFCIgAiKwOQTy/8rdnNq0rwiUIQH8mMnq4sc/Igh2EXwRJ8rgLUkzyHxWiEBFE6iKwlm8+If3O/YoySicXekmr9zoRMfSihotW9mySROsTucuLiN6gy3/4jNbO/1X63DRpRb1gOZ42U6sxveZTOZWg0636g0b5WlGWr0Mq9t1R8v8fqo1dkJzPdfBWJJoesBBNve5p23+66Oswc67Wk03n0CIhe+8bau//tLq7tjDFr/7ti37aLzVaLGVrZ053er26GVrnA91aq3aVqOVE7ddJnRpxOz58zf7c5124JePcEsWM/MWMHcD4uzs2bO9CI3tC/dgP+evz6gWRrxgAYId1r333hu7D/FVJrCqopOkoMAqiHjooYd8JnJB5ehwCqNnyCri2Hjes1/I0samgmCkTpjEl3VkQ0ejuOcQ3ScZl7EOQYRnboXQwVxUO/lfgAcjohCyCwu4YsfFvAj6zi+MlLaJgAiIgAhsSQSwiuS7j6Qrspi7du3qR0rFjyLGpvGGG27wncJ02vP/+DXXXBObz2dLYqJzEQERqFgCiU1XK7ZNOroI5CPAD3S+LPG3wiM5ZEtFPYzz7aQVIlAJCSA4BYsYhLOQbY9wRkRFJ4axM8z/qaee8tsQzkJEhTPKPPbYY94PHiGLCTJDRIUzxJxhw4b5x4svvhgb1kdZRDO2UxfHveCCC3wVCGchosIZ+1OWiSrDUMFQrrjnEMpvic9pzr4io+fOlu0sgZZ9PMmJujOtrhOkU+JGwCydOMHmPf2kbXRZu1sdd0I+ATqwadJ3b2tx9HGW1qChrXY+6UtcZnNxo4abELTVSad4y455zz9jvz3+mK2aOtXmv/GarfrqC2uw+57WeM++1uHiy6xBn93cpISNrOmBh9hGl11dq83Wtm72LMtwInVpRWlNVMGIH0RKgpEu8fMPTHXnSHBvY3/FfYotFdnGZCeHbGMykQnuf+5nJudJNIFv8F1G8OR9wQ+6YIPjK4j8mTdvnq+H9ym+9QTHDBHaFrK5Wc8kx/ERyhV1DvH7JeNrhGg6CcgGL8pHm+vZtm1b7x1flACNfcldd93lM8VCxlgynr/aJAIiIAIiIAKlSQCbKzp3sQFDgOb/G0aK8XsaW8kQjALDFotRSQjQlH3vvff8nDqMxFKIgAiIQGkSkAhdmjRVV5kRCAIckwsyfJoeXUIZTWWGXBVXEAEJZ3+KfxV0CcrlsIjQuc6bv5azT0ipUd3WTPvR2WTkHUa5wGU/r/zic8vYaWdrferpVnOrlgnbhuUGEwyumzPbZjsBedFrr9jGrPW+bM7adbbe+UYzyWFhQXZ1G3eMZocegbmxLXj9Fcv8borVareNbXDZuovefsvmv/yCrXde+tkuIzxz+i+WUt15Tbss7UZ77Ol8qGsUVn2JtvXu1s1PqleinTahMHMiENhzYI8RHqHThMlNCTLzES9ZT0cPE/4gfN5yyy15ROa///3vPqsaMfnGG2/0P+jIJKJDJho333yzt46gHmw+Bg8e7DdHPZHnu2xwomPHjv6ZP4i0W2+9dew1C8U9hzw7JfELzvG5557z9ikFNRPPSzoURo4cWaz7hM4BJlQiGHHCtQwddwUdQ+tFQAREQAREoLIToGOXTm+sxJhTgt/RjOoi7r777tjpMSKLwBaPicGx++D/F8Ro5sNQiIAIiEBpEvg9Rag0a1RdIlAGBBAJEADefvtt34NLLy7Rv3//MjiaqhSB5CUQFZ0StRLhDFsBhDPeJyNGjPDCWciS/quzlWCitpAhinDG5JT4ySGcEWRKINocffTRsUMgnD3wwAOx12GhuMJZsN5gv+KeQzjGlvic7iw0Guy+h636dgrGvhgt24a1a2KnunTSR86e4xdvv5GeUT+2Pn5h/qsv2zo3QSEWRdXcdU91Al3DfvsY+zBxYA5i9IYcP9lh3U6drdnBh8ZXEXu9IXO183r+xQnj2xhlN7pRJ9lOgM51mTRpThw05wmdmpJiG51IzSSKCOn1XYZ0tYhPdayyzVi48PjjrGaPP7P1N6OqQndt3bq1384kfvvss0++skzwR5B1e91113lrj88//9xPDIh1zP3332+MxsF7maBTlPcbk97yI46hr4wO+Mc//uEn22zSpIn3bOR9RLYvEwd16NDB8IzGAiQawUOaH4/BJzq6PSwX9xxC+crwjBDNiBAYDB8+PF+T+cxhezj3fAUSrEDob+oy/rkWZLgzaSNDlPH/VoiACIiACIjAlkggOlqqxR9Wa0xq+Mgjj/jRWuGcsasi2EYyDA9+R5AtHeoIZfUsAiIgAptLQCL05hLU/uVCAFHs4YcfNoYuI47xw/z444+v1BMrlgs4HWSLIxCEFwln5XtpR7gJ7Y50GZUZTugtrajlMpt5LP/ma7MvP7esmTN81TlOZFvt1jXs29+LyQUdb/EH79naX6dZxm57WAPnzxzE4HUui3buU497H+dGvfs4sTjDZ0njK73AZTQ3P2BAviqz3SSDSyeM937Uua4jo0aTpla9WXNLq1PbsMfIXbPWTUS4yvlXZ1uqE6MzGjXMl7mdr9JNXeEmxSmPCJPafvPNN94zuqj5Bejc6du3r3+QiYsQijVHEKFDm5s1a+YtPg4++GA/0SEZRWQgYZkRJhNiKGyw3cEuIj6Y74Cg/iCQ03kT7cxhe0nPgX0qSzDiCQsSssUR9ol6ruPj9ttvL9Rzu6DzYxQVQjTCM/Vh0UFIiC6ImNaLgAiIgAhUZgL8XiaindlkRRNkOZO4Qkd7mIth++2399v4E/YJiSOxDVoQAREQgc0kIBF6MwFq9/IlgD9unz59bMqUKda7d+/yPbiOJgJJQKCkopOEs9K5aDfe/4CtWLLUyNIt7ajTpo0tczOOr1swz5Y7MbrOttt54beGE4ELCoRqbDIa7L2PNey1U55iSyeMs9odO1mz/Q6Ira/pJg4kC3qes9RYvU0Hq+uOEYK6lk2aaKnOPxnBuen+A6xard+zgEMZc5MO1nDiarmEy+omM9xNzV6mhyPLh2wgRgzgy7z77rt7mw1GBjDKJojE+ED/+OOPhrhMxvn06dP9kFYaF/VXP+WUU/yEimTw8uPup59+8nVTLvyYQ7BGRGVkApm4/AB85pln/KS7/Ag8//zzvd/6CSec4Ece4OWOcI39B6MV4qO45xC/X2V5zfc9WeUrnQUMD7KkeWxqMLcEQ4uHDBnis7sQonNcpwejQxQiIAIiIAIisCUR4P8WYtq0abHTinZmI0ATWH2xnv9vGLVF/OLmFyHovI1Gyh//mwXLsug2LYuACIhAcQhIhC4OJZVJKgKIavwwVYhAVSRQXNFJwlnp3R146BG7dulSepVGalo7Z66zwOhg1d0//g167uTtArC8yFq+zGo2TyxE48HcbMDBluoycqOxfvFi27B0icui7hdd7ZcRoplIcNFbb9iqVm2sphO/02rXsTUzpluqs57AV7qpE65DRnW+CspxxUYnDKb8Mang5hw2THDHj6boMnViSYM38B133GEvvPCCTZw40T/YxuibIEIzwSDbosH2M844w/snsp4Jc8ePHx8t4pfJOPrnP/9pIbMZMZrM25dcZj2Z1EwAhC0HPxBZ9/rrr/tJhA444AA/+oeyX3/9tX8w+idM/okvMlHcc/CFK/GfzRWfo6eOzzZ+0lhzIOxzHVa5LP8w10S07Ja2TGb9Dz/8EDutBg0a2HHHlX7HWuwAJVhgss9471Em5gzvnVAV7xUmzIoGHUAMH1eIgAiIgAj8SSDMK8FIYv5n4XMyTEgeJl2mdNeuXb0IPXr0aD8/RraziRszZoyvKHSih1r5HU6QZR06h8M2PYuACIhAcQikuKweEp8UIiACIiACFUigixM4yZ4kE+Hiiy/2olh0GZFsl1128S1kpuognLFPiHPOOceuuuoq//LEE08sUDhjeDuBcBaG5fkVf/wJwhlCWAgyBhHJaFO8cEYZ7HIoj287wlloV1Q4I6sieFEX5xzCsSv6GRGa83jc2QP07lr6QnSm47J88iTLcdeyVodtLXfdOstastjbXTTp19/baRSXAVYci0a/7iYz3MXq79g94W6rfvzBMn/+yTasWG45Lrs0JTXVqjtbkAa9dytQ9E5YURmtnLNoka1r2dK6dO9RRkdIXC3zDpDZw/2NOBeCf5PIjl7jRHqEbARRyoRsoFBug+s4oA48i9PT030dIcsolIk+L3LniZhNnRyX41SvXj32HgllsY6gPfgyMnv9VlttFcvEDmXCc0HnELbrOS8B5ptgIkQCL0yy1Msj+Bz9y1/+UuihmLgS25bSDOzMnnjiiViVCLzvv/9+7HVFLiBoxCcYMFkWNjbRGDVqlLdoia7Dt7R5AR120XJaFgEREIEtjQCT7dKhiq9zw4Z5J7imcy9MMMj/LW1c8gGTJxOMtAp2X3S28/8FwfcC/6Pz/wTBaKSQUe1XuD/HHnus94umLGL27NmzjRFcRxzhJrdWiIAIiEARBCRCFwFIm0VABEQgmQkUJDpJOCu9q1bWIjQtzXZZzyu++tKyndiZ4gTMDe41dhQpLtM5rXETy+jS1dKcZUe6s8UoKn579GG/X5vTziy06Lp5c534/YmlO//nai47pkHPXoWWL6+N9zz7nD3usnGmOJsMhXm7CHyjydjlXmQSQyYKVZQOAUaNhIlb8dp/6KGHSqfiQmrBegXRO0T4sY9IELLcyZA/++yzQ5FSeUZYQJSgkxBrmGQSobFFwaKG4HoglicSoemwWbbMfT66GDRokPddlwjtceiPCIhAFSQQRGjmt0g0t8XPP//sk1sYVUXwPXPNNdd4ITmKiySSyy+/PCY+8/1w5513Wo8e+RMCsDHj+yl4TlPP1VdfbWeddVa0Si2LgAiIQEICsuNIiEUrRUAERKByECCTMlGQpcm2graHfchMLkkGWdQbrrAsT44bhDOOhcduQVFUGwvar7zWh5nBO7dvV2aHTG/Q0Jr028cynR/f+iWLrFbrNrbBZd5uWJNp63+ZZoum/2obnPiS6jJlU51InYIdg8u8TavfwOq5jOGox3PDPrvb4nfetswZM6xOu8RtRvTGB7pup84+K7qBs/ZIpljp7BGqcpBVdPrpp3uxMPojj/cKfsaK0iOAXQpZXkOHDvXDjxlF8vTTT5feARLUxI/7MEklm4OIMGHChHyZbPG7k3EfRpTEbwuvEXTJsI/P1keg4IH9SFlEbm6urzZY35TkGEz22dKNgCCYgLKg4HsnfPcEwb6gslovAiIgAls6gREjRhR6ioxuZAQJHZB04gXP5/idGM3Ig5FffB4nErTDPth38D8+I7r4TiIDO3wuhzJ6FgEREIGCCEiELoiM1ouACIiACJSIwJYqnLVu3dpzwCYi4w8vvBKBKUHhOu3bG488sf+BFiYizFrs/uFf9buFxtrffvP+zwtHvWIrXBtbHnuCF51qtGptGT16OTuPPy0lovVlLVtqS8d9aBndezrR+xer16274TGtSB4C2HnwQ5CMJfwY27nOhJ122skQSFmnKF0CCP4I/Fgh4f9NlvDYsWNL9yCbURsZwnhWf/jhh75jAgHgiiuuMCZajAZDqm+44Qb77LPP/H3CMGwy3ph0qqyCUTdYNT366KOxiTj79evnM/bJLA+BvzMdKgjHtHvgwIH+uShBPeyvZxEQAREQgU0ngJdz8HMurBYmVy5O0MkZb9NRnP1URgREQAQkQuseEAEREAERKBUCW6pwFrJBVq7OLBVOm1IJIjGPGpEfB0xiSKxznsGL3nzNZt53j6U54bmWE6Grt2xl1ROI0GRHr/hsstXvtbPznV5k6S4rso7Lykym+N5lg3fu1CmZmlTubWF0QjRTttwbUAUPyKSvjPRgwsKffvrJT86UDNcAj3F8NkNGPGI5Q6Hxi37++ee93yeXiyHXwdOTjgosN5jAD6sKhPXwOVbalxYfbaxiCNrGsfEn5RH1HIUtk2IxN8Crr77qH5zX3XffXdpNUn0iIAIiIAIiIAIiIAJJSiA1SdulZomACIiACFQyAkE4GzdunL311lv2wAMPGJMlVvbMzR122MFfiR+cgJuMUdNZCTQ96FCru0MX2+iGRWZO+9mWTxhns4YPs4Wj37D5r71qSyaMt/mvj7K1LvO5cd9+3vIjd32WNdyld9Kd0io3ZLSesn2T7rpUhQYxMR5Dm3v16uV9MckgZkLKigwEWwRohlR/8skn3hc8eEVHBVz8kwkyjJlICgE9TEj15JNPlskpzJ07NyZAc3wEbz7/b7vtNiMbescdd4wdF4sThoQjoCOO873AueGPrRABERABERABERABEagaBCRCV43rrLMUAREQARHYRAIZGRmW4QST75NUhOa0arrM2Sb99zUmI2xxzPHWYK+9/YSDWUvd7ObOH3ZjdpbLkG5laQ0b2YovPvO2HY333GsTiZTtbtietPnDG7Zsj6TaRSA/AcRerCXwxiSwQ5k1a1b+guW0JnjSH3LIIdaiRQurXr16bFJD7DdCfPXVV36RCQ/JOCYrmexuItThX5TiHwRlAma0L1hrHHvssV7Mj3qP4htKe+mgnOE+SxGpCYnQHoP+iIAIiIAIiIAIiECVICA7jipxmXWSIiACIiACm0Ogk8uIxCaiMgQ2HDzqbdfRcp0AvXLKN1bNCVe5WVne0iNj512tZpMmSXsqiNBt432xk7a1atiWSIBJlh5++GH717/+ZWQR42FM1m6PHj3K/XSDDQdieAhEXwLLDSaaYkKoIOZuv/32oZgX0HlBxnJZxPz58321vXsXPqICCw7sQ8K5RNuC3YhCBERABERABERABESgahBQJnTVuM46SxEQAREQgc0gcLob4r5rl99tOTajmnLfNdXNcN6gR0+r56w66vPceYekFqAB9K+/DLZjjjuu3FnpgCIQT+Cmm26yv/3tb341/sXvvvtufJEyfx0mfpo2bVrsWDNnzowtI0ATYfLB6ZHOMsRfAj/maDChFIGAvTkR2gYXJigsKP75z396AfrCCy+0Z5991l5//XVvG1JQ+dA+sqcLi2ru843IcZ1tChEQAREQAREQAREQgeQnIBE6+a+RWigCIiACIlDBBPbfe2+78swzK7gVVePwZ550srVu3bpqnKzOMukJXHzxxXb99df7dp7pPgNefPHFcm1zx44d/fEQejOdXzpi75tvvunX7bzzzrG2dO3a1S+PHj3ai7Lr1q2zMWPG+HXRLGpW1KlTx68nM3nlypV+eVP+dPpjAlHqoU2JxOAsNwLjs88+8x7QTPqI7zbtCVnUiY7b6I8JWJlssbDAcoSICvSFldc2ERABERCBTSfAZ+1DDz3k5yfY9Fq0pwiIQFUnkOL+mS04daGq09H5i4AIiIAIiIAjkO0yD3MWLRSLciCQ3n4bq/aHuFQOh9MhRKBYBN544w0joxcLjP/7v/+zMDlgsXYuotBpp51mH3zwgeHrjBVINBCewwSDTObXpk0b+/77732Rxx57zPbZZx+/jN/ykUce6Ze32WYbW7FihZ9ckRVMVBiyln0B9wffZiYSpCxi9uzZs+2EE04wMr5LErB4/PHH/S6IwgcddJBhsYHIzPrU1FQ777zzDH6HHnqoIVxPmDDByOZGvEaQHjBggA0ZMiR22EmTJvm2sIL6atas6X254zsA/vvf/9odd9zhBW48vGEFH9qkEAEREIGqRICJaukM5DP1zjvvjJ06Hal06DEx7OYGdTCi5YILLrBLL710c6vT/iIgAlWUgDKhq+iF12mLgAiIgAgUn0DKH0Pei7+HSm4SgbQ0S61ff5N21U4iUJYEmHiPCQvbtWvnM6Nvu+22Uj8cgm18kLX8yiuvWPfu3b0AjgCNGM3xgwDNPj179vQ+1gjB+EMvWbLEC8x4WccL0JQfOnSobbXVVr7sc889ZxMnTrTFixezqURx9dVX2+WXX+7bxDGfeOIJe/755238+PG2bNkyXxeiBW3FhoN2kx19yy23+G2cD+ujQbY0wjxBZvfLL79sP/zwg98vWm7QoEExgf6ll17ymd+//fZbtIiWRUAERKBKEKBTj89TPgvDHAGcOMtff/11lWCgkxQBEagcBJQJXTmuk1opAiIgAiJQgQQ2Om/SrKnf2sbsbJs89btK6Q9dgfiKPPT3M2a4iR9n2DHHDLTq7TsUWV4FRKCiCOCzfNlll/ns4lNOOcVuvPHGcmsKmb74ODcpYmLRpUuXGn7J9Yvo0GEw5CI3ESjey2RgB3/pTT0hRGfamJ6ebojhaa5TKRpr1qyx3NxcL1hj3cFrylZ3E6cmEuA5V4Rt2hWsN6L1heXly5f7uhDnMzIywmo9i4AIiECVIXDFFVfYU0895c/33HPPNV4TRx11lH3xxRd+9IlfEfnD5zCfvcGHP7Ipz2K2+9+Xz+qiMqH5Lon/3M9TkV6IgAiIgCOQP+VCWERABERABERABPIQSCFDt1Fjm+MEm1Nd5t89zz6XZ7tebDoBBOhBQ6+xl957z9KaNNv0irSnCJQDgQ4dOtgjjzziLSTI+sVqoryCrOiiBGjagqdyUQI05RAeyJJu2bLlZgvQ1IeQjZ978+bNEwoRtWvX9gI0ZRHJ69Wr5602EgnQlEF8pr7CBGjKNWjQwJ+DBGhoKERABKoyASap5bupsIlnsW86+uij/WgZ5hM444wz8onUCMr//ve/rVevXrbtttv60Sl0WiYKxGlslfh+7NKli51//vm2YMGCREW1TgREQAQkQuseEAEREAEREIHiEEhz2YetnLhyVP/+9j83fP2l9z8ozm4qUwgBBOjzb7nVNrrsyNtuuslSnSilEIFkJ4Do+eCDD9qpp57qvY5PPPHEZG+y2icCIiACIlAFCGBTxNwFb731VsKzxR+a+QPChLGUfc8lARx88MF+LoGwE77S9957r/f4x06JeQt4HR/Yf2C5hBUIcwwQWCwxxwBCtkIEREAE4gkoEzqeiF6LgAiIgAiIQAIC+EKntWhht1xwvnVyvrBX/O9/EqITcCruqrGTP/EZ0Cvd8P0n3YQ67ZynrUIEKhOBG264wU+oh58yntEKERABERABEahIAvvtt58fPRImjI1vy3333edXDRw40NtKYdURJr998skn/TayqP/n/scl8ORnEtypU6fmG2GDpRPfg8SIESPs/fff9+J2v379vBf1hx9+6LfpjwiIgAhECUiEjtLQsgiIgAiIgAgUQiCtZStLyahvI6+71vbdZRcJ0YWwKmrTTY8Ot5Yuu/yD55+z7vvvX1RxbReBpCRw0UUX+YkKv/32W+vbt29StlGNEgEREAERqBoE8NhnYlfEZbKT4+Orr77yq4455hjDIgm7o8MOO8yvQ2gmZs2a5Z+ZvLZjx45+Gc99sqWjgWc/DyxAunXr5pfx+t977719segEidH9tCwCIlC1CeSdMaRqs9DZi4AIiIAIiECRBGq4f8gbueH4911+mY14/Q3r3L5dkfuoQH4CT9x8k23tvAMR9hUiUJkJMPy5adOmdskll1j37t3t66+/rsyno7aLgAiIgAhUYgLHHnus3XHHHfb000/nO4sgDG+//faxbZ07d/bLc+fO9c/B+xk/6GhE92F9KDdz5kzvHR0tyzKT1SpEQAREIJ6AROh4InotAiIgAiIgAkUQSHOTeaWkp9kZJ59suSuW5yn9ybdT7RXnnde5fXtv21GvTm3r7Ow7qlIwgeOchYvsB+f5/InLEMVyg+xxIsXNsF7NZUBvs2N3S3EZOwoR2BIIHHTQQX6CPITo9u69/9NPP1m6u9cVIiACIiACIlCeBJhs9oADDvAWGcGnORyfrGVE4+nTp8cmuv3ll1/8ZjpTiTCxLeUKCya2DXGTm9eDCWejwSSFChEQARGIJyAROp6IXouACIiACIhAMQhUa9jIeGx0E6/krlhhuU5o3bh+va12r8d+8onzi36/0Fp2cLONvzrsEUtJcc5YKSn+MXbCBPvr5Zfn2+8o5zd723XXuWKuXCqPVLvr/gfs7vvvz1f2qn/8w85wE8KY8+qz3Bz/fK6rc+y48XnKtnL+1vddM9Q6M5GMmxiQWLlipR3x97/bnPnz85Z1P0xevfMOq+d8sX1b3Q+NHyw7iqQAAEAASURBVKbPsFOvuspWukltCguO07tHD0tr195Sa9a0VDf8k/YrRGBLI7Dbbrt578x/uPfgtu79zXBohjorREAEREAERKA8CTBx7ttvv+29maPH7dq1qxehR48e7bOXs7OzbcyYMb5IyIhu3bq1f43N1IIFC6y5m5SbYDLDaPD9hmXHvHnz/CSEJ7vEDIUIiIAIFEUgxRnKu1+pChEQAREQAREQgdIksHLlSvvuu++8t97s2bPzVc0/+QyZjAblw4+B6PpEZSlH+fhACOvTp0+e1c8//7wlagPHDz82wg7MiJ4o8L6NBuc3bNiw6KrYMnW2adPGdthhB8vIyIit14IIVAUCvDfOP/98GzdunJ+oKT4TrSow0DmKgAiIgAiUH4ErrrjCnnrqKZs0aZKRCZ2Tk2N77LGHF4hpRchq/vLLL+3II4/0DeO7aYVLosDXmfj0008tZDczqof/HYkTTzzR1/OBG+VHXHDBBXbppZf65bFjx9rZZ5/tlxGlmRixpks4mDNnjj3yCIkWLnFCIQIiIAIRAhKhIzC0KAIiIAIiIAIiIAIiIAKlQeDCCy+0UaNG2auvvmo93GgAhQiIgAiIgAiUBYErr7zSnnjiiZgIzTEefPBBwyaDCCI0y2RIX+5GyAXxGTGaBITo9xSdqZR544032MVnPJ9zzjl2nRuVFxWh2YY4fcstt+SbCFGjgaCjEAERiCcgETqeiF6LgAiIgAiIgAiIgAiIQCkQGDp0qA0fPtyeeeYZY5SCQgREQAREQASSgcDSpUu9j3PwgE7UprVr19qaNWu8tdQGZze33tnO1XLWbKkJbNXYtnjxYr+tiZv7Q/MiJCKqdSIgAhKhdQ+IgAiIgAiIgAiIgAiIQBkReOCBB+zmm2/2Q5P333//Ao9y/PHHe6F6yJAhBZbRBhEQAREQAREQAREQARGorAQ0M1BlvXJqtwiIgAiIgAiIgAiIQNITOPfcc+2ee+7xvpkjR44ssL2HHnqoPf3007Zw4cICy2iDCIiACIiACIiACIiACFRWAhKhK+uVU7tFQAREQAREQAREQAQqBYHDDz/cT/J01VVX2e23356wzYcccohlZ2cbmdMKERABERABERABERABEdjSCEiE3tKuqM5HBERABERABERABEQg6QjsuuuufpKnu+++20/4FN/ARo0aGUL0sGHDbMyYMfGb9VoEREAEREAEREAEREAEKjUBeUJX6sunxouACIiACIiACIiACFQmAvPmzbM+ffrYfvvtZ7fddps1bNgw1vxp06bZwIEDrW3btjZq1KiEkz/FCmtBBERABERABERABERABCoRAWVCV6KLpaaKgAiIgAiIgAiIgAhUbgJbbbWVITa///77dtppp9lPP/0UO6Ftt93WBg8ebFOmTLEnnngitl4LIiACIiACIiACIiACIlDZCSgTurJfQbVfBERABERABERABESgUhLYcccdrU6dOj4jeo899vDngC802dArVqywt99+22rWrFkpz02NFgEREAEREAEREAEREIEoAWVCR2loWQREQAREQAREQAREQATKicA333xjKSkpNmjQIHvllVf8UdPT03029MyZM23kyJHl1BIdRgREQAREQAREQAREQATKloAyocuWr2oXAREQAREQAREQAREQgUIJHHjggfbDDz/YVVddZeecc44ve/7559vYsWPt008/tfr16xe6vzaKgAiIgAiIgAiIgAiIQLITqHaNi2RvpNonAiIgAiIgAiIgAiIgApWZwAknnGA///yz1a1b1/CFjsapp55qEyZMsGeeecbWrFljffv2tZYtW/rXOTk5ttdee0WLa1kEREAEREAEREAEREAEKh0BZUJXukumBouACIiACIiACIiACFQ2As8//7zdddddNnv2bNt5551t//33twMOOMC22Wab2Kmcd9559sYbb9hRRx1ld955p91888324IMP2scff5xPuI7tpAUREAEREIEyI7Bx40bLzc21DRs2WLVq1fwy62rUqJHnmKtXr/bbVq5c6TsbKcOjUaNGecotXLjQr6e+1NTf3VEpR8djNGbNmuXLsY3vjVatWvnX7du3jxbzy7/88ot/njFjhrVt29Yvb7fddvnKhYlwf/31V//dw3l16tQpXzlG5hDTp0+3cLx69er5NkQLh/pYR4cpfLCYij82x+M82MZ50UZeR7//qINO2MWLF/ty8+fP90zYJ54NZRctWsSTLVu2zJo0aeKX41mzkusC53Xr1lnt2rX9MnVifaUQAREofwISocufuY4oAiIgAiIgAuVGYOnSpfl+AJXbwXUgERCBPASWL1/ufZ5feukl40c5ccghh8QevL7lllvs/vvvtz333NPbc/zlL3/xP+iHDRvGZoUIiIAI5CGAkBjEzOgGhEmEQcROJjpFgKNsz549o8UMUXTq1Km+7LfffmsdO3b05Q499NA85Xjx5JNP+nKTJk2yXXbZxS8HC6Fo4dtvv92LjAiOLVq08OXOPPPMfGLi448/blOmTLGsrKyYwHv44YfbPvvsE63OON4jjzzi24WYWL16df8ZGX/suXPnGlZGBJO6IkD26NHDrr/++jz18aJ///5+HSLrtGnTvNg6YsSIfOU4Bly23357P5oFAfOdd97JN2ksHYd0IjLZLGIq1+Tf//63de/ePU+dr776qj8XVobrxuf8wQcfnKfcV199ZTfccIMXZLmGiKbUdeWVV+Ypx4sTTzzRl6tVq5atXbvWL3Ot4oNrwOS3aWlpniXbE53zZZddZojAXBdYEzfddFM+EfrFF1+MzWfAvQWbI444wo499li/T/jDvYjdFMIz9yTnzbn861//CkX8c2Zmpp122mm+HKOGEPThzvdifHAcuDRv3tzmzZvnN48ePTq+mP3nP/+xN9980xo0aGBLlizx503nbpcuXfKUZSTSf//7X39dw/1466232m677ZanHBMG33HHHf4cOGf4cL8OGTIkTzlenHzyyb4c145z57wTfZezL9t4nyKos0wndHzAAaGf9xUCPst0Wrdu3TpP0VGjRhks2c5x6TBh+bDDDstT7osvvrD169f7bbxXEPG5N7p27erL0RnBaz47GjdunK/jJU9leiECxSQgEbqYoFRMBERABERABCobAX608Y8t/6Befvnlla35aq8IbLEEEFFeeOEFe++997wNBz8CEX6CII0P9BVXXOHX7bfffnbfffd5oaBfv35bLBOdmAiIQPEJjBs3zo+QYHJTBD6+7+Pjgw8+8GIn4hPCHwJl79697eyzz85TFGEOsRSxCeERQYt9rr766jzleIFIh0D29ddf+xEdlIsXgin37LPPekHyt99+sw4dOvj6evXqlU8s4zOQOvhMRLylbh59+vShmlhwvLCNzvWmTZv613xuRoP2c66IoWTUIlCyH+XjA9GNcnz+IrKxHJ/dHL+PXm+5BBCUEWwR6bknec2D9000yLwOZcnGbtiwoX+dKFsbCy7qpJNj66239uW6desWrc4vT5w40W+j4wFxnPr33XfffOXowOb+/u6773znNMuUiz/2yy+/bGTFI9LzoA2dO3f2vweilU6ePDnWsUTnBec9YMAAGzhwoC92yimn+P0RtPmc4P1E3QoR2BwCEqE3h572FQEREAEREIEkJjB48GAbM2aM/4eSrA+FCIhA8hEggws/6PHjx9u7777rM/cQoxGCeN+SmdSsWTMv5CBGK0RABP6fvfMAk6LY2nCRFFCUnDOSFRQVUVFRMQdAEfQarxGz6DVds+i9XnPW34QoKmLChCioiIiKAiKKgAEE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HXfcsUxNk+By4403ut12261cROiLLrrInXnmme63335z++yzT5naHr54++23dzvssIP3hG7YsGH4dNqONRH/wgsveKEr00XotEGKU/FNN93k75VBgwbF/d0Y51KSk0CgpJ/XdI3XxRdf7O644w738ccfx/we00TGF1984YmEP4PhhdNr167trrrqKqfJI4X40P8xWO4RQITOvTGlRxCAAAQgAIFCBPRP87BhwwqlkwABCGQeARPBTbhWC4Nplh4rLdG8Eu3D18crN9G8RjJcrqUHRfd4dYXTrT+2jVV2vGvKmjdcZ/jYyo/Fp6x5db3M6tC+TXBYmm11TmbHtg2n2bFtLZ+2wTTbt20wX2nzBssK7gfLtnTbhusK5w3mKypvouOj8szsXo1XbqtWrVz9+vUte7lt161b5ypXLvpfeAk7mvRTv4O25ZZbOr1WrFgRTE7Kft26dd1zzz2XUFmJ9EEFJZovoUrTlCmRPqxdu9ZVqVIl6S0sru7izie9QYECdY9WqlQpkFJ4N9H2iZ/KSmSiu3AtsVOKq7u481aq8smK+8xa/uA2lZ9X1ZPIGATbE29f3vt6xTONj+yII45wN998c7xs0XR5TcfznI5mYierCRT9Fyyru0bjIQABCEAAAhCAAAQgkH0EJB6FBaTs6wUthgAEYhHQE0mXXHKJW7NmjT/97rvvFhBxevfu7a677rropYsWLXJ6bP2dd97xnqlbb721u/TSS13Pnj2jebQzbdo0f508EjfffHPXvXt3d/XVV7sWLVoUyJfMA4Vq0KP4Zqp33Lhxdui3zzzzjLvlllt8H5599ln3xhtv+PYdddRRnoMJdJZvyJAhXtB+7bXXfL7DDz/cKTTBpptu6ss75ZRT3IwZM3y4sTp16vi0Rx55xC9qdu2117p9993XHX/88W727NlOIS5kChWyySab+H29KSzJVlttFT1OZOfKK6/0k/nqo54s69+/v6+rRo0a0cutDxqvovqqCxRyQ4u6ffPNN05jetppp0XLKcmO3U+6Rp6m9957r78PXnnlFe+xL152r0gUveuuu7x3+LfffuvE78gjj3Tnnnuu5/vrr7+6Aw44wFcvj3nZLrvs4rd6C47v/fff7xQC4oYbbvD16PyUKVO8t71CNMhD9ueffy4Qsubpp592jz32mBsxYoRvq8bpmGOO8X/vNMYKwaCF6eTV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gAABAgRKj+qtW7cO69evp0GAAAECnQpox9FpYS2LAAECBAgQIECAAAECBAgQIECAAAECLQjYCd1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzf6uI+QAAB4ZJREFUIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcCQuhOC2tZBAgQIECAAAECBAgQIECAAAECBAgQaEFACN1CFcyBAAECBAgQIECAAAECBAgQIECAAAECnQoIoTstrGURIECAAAECBAgQIECAAAECBAgQIECgBQEhdAtVMAcCBAgQIECAAAECBAgQIECAAAECBAh0KiCE7rSwlkWAAAECBAgQIECAAAECBAgQIECAAIEWBITQLVTBHAgQIECAAAECBAgQIECAAAECBAgQINCpgBC608JaFgECBAgQIECAAAECBAgQIECAAAECBFoQEEK3UAVzIECAAAECBAgQIECAAAECBAgQIECAQKcC/wWV3uHYa0QKXgAAAABJRU5ErkJggg=="
    }
   },
   "cell_type": "markdown",
   "id": "3a7cc5f2-0fd0-4f73-b5a2-c4d45335c356",
   "metadata": {},
   "source": [
    "# LangGraph Tool Calling Agent with Llama3\n",
    "\n",
    "LLM-powered agents combine planning, memory, and tool-use (see [here](https://lilianweng.github.io/posts/2023-06-23-agent/), [here](https://www.deeplearning.ai/the-batch/how-agents-can-improve-llm-performance/)). \n",
    "\n",
    "LangGraph is a library that can be used to build agents:\n",
    " \n",
    "1) It allows us to define `nodes` for our assistant (which decides whether to call a tool) and our actions (tool calls).\n",
    "2) It allows us to define specific `edges` that connect these nodes (e.g., based upon whether a tool call is decided).\n",
    "3) It enables `cycles`, where we can call our assistant in a loop until a stopping condition.\n",
    "\n",
    "![Screenshot 2024-05-30 at 10.53.54 AM.png](attachment:e5e59030-655b-401d-962c-2ef75410b177.png)\n",
    "\n",
    "We'll augment a tool-calling version of Llama 3 with various multi-model capabilities using an agent. \n",
    "\n",
    "### Enviorment\n",
    "\n",
    "We'll use [Tavily](https://tavily.com/#api) for web search.\n",
    "\n",
    "We'll use [Replicate](https://replicate.com/), which offers free to try API key and for various multi-modal capabilities.\n",
    "\n",
    "We can review LangChain LLM integrations that support tool calling [here](https://python.langchain.com/docs/integrations/chat/).\n",
    "\n",
    "Groq is included. [Here](https://github.com/groq/groq-api-cookbook/blob/main/llama3-stock-market-function-calling/llama3-stock-market-function-calling.ipynb) is a notebook by Groq on function calling with Llama 3 and LangChain."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d39c2a04-d7e7-42f4-9265-780a14f591c0",
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "from getpass import getpass\n",
    "TAVILY_API_KEY = getpass()\n",
    "os.environ[\"TAVILY_API_KEY\"] = TAVILY_API_KEY"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d8bba6bb-d3f2-4502-83ff-a5cf61d859c8",
   "metadata": {},
   "outputs": [],
   "source": [
    "REPLICATE_API_TOKEN = getpass()\n",
    "os.environ[\"REPLICATE_API_TOKEN\"] = REPLICATE_API_TOKEN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bd3c1fe4-d6ce-484a-9b3c-e80491f03066",
   "metadata": {},
   "outputs": [],
   "source": [
    "GROQ_API_KEY = getpass()\n",
    "os.environ[\"GROQ_API_KEY\"] = GROQ_API_KEY"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f8387853-9875-478c-8511-c75855c58e52",
   "metadata": {},
   "source": [
    "Optionally, add tracing:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "c6a812f4-0305-4eb5-bf29-2c41ef57cb03",
   "metadata": {},
   "outputs": [],
   "source": [
    "os.environ['LANGCHAIN_TRACING_V2'] = 'true'\n",
    "os.environ['LANGCHAIN_ENDPOINT'] = 'https://api.smith.langchain.com'\n",
    "os.environ['LANGCHAIN_API_KEY'] = <your-api-key>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bb7387b2-0094-480b-9b59-3788a22ed06e",
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "os.environ[\"LANGCHAIN_PROJECT\"] = \"llama3-tool-use-agent\""
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9f0193d8-123e-4e1c-94e4-b7fb04d0f2f2",
   "metadata": {},
   "source": [
    "### Define tools\n",
    "\n",
    "These are the same tools that we used in the [tool-calling-agent notebook](tool-calling-agent.ipynb)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "586d8bba-2451-4136-b322-f47bcd4b9841",
   "metadata": {},
   "outputs": [],
   "source": [
    "import replicate\n",
    "\n",
    "from langchain_core.tools import tool\n",
    "from langgraph.prebuilt import ToolNode\n",
    "from langchain_community.tools.tavily_search import TavilySearchResults\n",
    "\n",
    "@tool\n",
    "def magic_function(input: int) -> int:\n",
    "    \"\"\"Applies a magic function to an input.\"\"\"\n",
    "    return input + 2\n",
    "\n",
    "@tool\n",
    "def web_search(input: str) -> str:\n",
    "    \"\"\"Runs web search.\"\"\"\n",
    "    web_search_tool = TavilySearchResults()\n",
    "    docs = web_search_tool.invoke({\"query\": input})\n",
    "    return docs\n",
    "\n",
    "@tool\n",
    "def text2image(text: str) -> str:\n",
    "    \"\"\"generate an image based on a text.\"\"\"\n",
    "    output = replicate.run(\n",
    "        \"stability-ai/sdxl:7762fd07cf82c948538e41f63f77d685e02b063e37e496e96eefd46c929f9bdc\",\n",
    "        input={\n",
    "            \"width\": 1024,\n",
    "            \"height\": 1024,\n",
    "            \"prompt\": text, # a yellow lab puppy running free with wild flowers in the mountain behind\n",
    "            \"scheduler\": \"KarrasDPM\",\n",
    "            \"num_outputs\": 1,\n",
    "            \"guidance_scale\": 7.5,\n",
    "            \"apply_watermark\": True,\n",
    "            \"negative_prompt\": \"worst quality, low quality\",\n",
    "            \"prompt_strength\": 0.8,\n",
    "            \"num_inference_steps\": 60\n",
    "        }\n",
    "    )\n",
    "    print(output)\n",
    "    return output[0]\n",
    "\n",
    "@tool\n",
    "def image2text(image_url: str, prompt: str) -> str:\n",
    "    \"\"\"generate text for image_url based on prompt.\"\"\"\n",
    "    input = {\n",
    "        \"image\": image_url,\n",
    "        \"prompt\": prompt\n",
    "    }\n",
    "\n",
    "    output = replicate.run(\n",
    "        \"yorickvp/llava-13b:b5f6212d032508382d61ff00469ddda3e32fd8a0e75dc39d8a4191bb742157fb\",\n",
    "        input=input\n",
    "    )\n",
    "\n",
    "    return \"\".join(output)\n",
    "\n",
    "@tool\n",
    "def text2speech(text: str) -> int:\n",
    "    \"\"\"convert text to a speech.\"\"\"\n",
    "    output = replicate.run(\n",
    "        \"cjwbw/seamless_communication:668a4fec05a887143e5fe8d45df25ec4c794dd43169b9a11562309b2d45873b0\",\n",
    "        input={\n",
    "            \"task_name\": \"T2ST (Text to Speech translation)\",\n",
    "            \"input_text\": text,\n",
    "            \"input_text_language\": \"English\",\n",
    "            \"max_input_audio_length\": 60,\n",
    "            \"target_language_text_only\": \"English\",\n",
    "            \"target_language_with_speech\": \"English\"\n",
    "        }\n",
    "    )\n",
    "    return output['audio_output']\n",
    "\n",
    "def create_tool_node_with_fallback(tools: list) -> dict:\n",
    "    return ToolNode(tools).with_fallbacks(\n",
    "        [RunnableLambda(handle_tool_error)], exception_key=\"error\"\n",
    "    )\n",
    "\n",
    "def _print_event(event: dict, _printed: set, max_length=1500):\n",
    "    current_state = event.get(\"dialog_state\")\n",
    "    if current_state:\n",
    "        print(f\"Currently in: \", current_state[-1])\n",
    "    message = event.get(\"messages\")\n",
    "    if message:\n",
    "        if isinstance(message, list):\n",
    "            message = message[-1]\n",
    "        if message.id not in _printed:\n",
    "            msg_repr = message.pretty_repr(html=True)\n",
    "            if len(msg_repr) > max_length:\n",
    "                msg_repr = msg_repr[:max_length] + \" ... (truncated)\"\n",
    "            print(msg_repr)\n",
    "            _printed.add(message.id)\n",
    "\n",
    "def handle_tool_error(state) -> dict:\n",
    "    error = state.get(\"error\")\n",
    "    tool_calls = state[\"messages\"][-1].tool_calls\n",
    "    return {\n",
    "        \"messages\": [\n",
    "            ToolMessage(\n",
    "                content=f\"Error: {repr(error)}\\n please fix your mistakes.\",\n",
    "                tool_call_id=tc[\"id\"],\n",
    "            )\n",
    "            for tc in tool_calls\n",
    "        ]\n",
    "    }\n",
    "\n",
    "# List of tools\n",
    "tools = [\n",
    "    magic_function,\n",
    "    web_search,\n",
    "    text2image,\n",
    "    image2text,\n",
    "    text2speech\n",
    "]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2579e847-33f2-4d88-8579-78d9f4affbb3",
   "metadata": {},
   "source": [
    "### State\n",
    "\n",
    "This list of messages is passed to each node of our agent.\n",
    "\n",
    "This will serve as short-term memory that persists during the lifetime of our agent. \n",
    "\n",
    "See [this overview](https://github.com/langchain-ai/langgraph) of LangGraph for more detail."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "f41abc45-bf1a-45a8-a6d3-d90c1cbbd3dd",
   "metadata": {},
   "outputs": [],
   "source": [
    "from typing import Annotated\n",
    "from typing_extensions import TypedDict\n",
    "from langgraph.graph.message import AnyMessage, add_messages\n",
    "\n",
    "class State(TypedDict):\n",
    "    messages: Annotated[list[AnyMessage], add_messages]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1c06614c-e0d3-40a1-9b65-0f5f825cb4ca",
   "metadata": {},
   "source": [
    "### Assistant \n",
    "\n",
    "This is Llama 3, with tool-calling, using [Groq](https://python.langchain.com/v0.1/docs/integrations/chat/groq/).\n",
    "\n",
    "We bind the available tools to Llama 3. \n",
    "\n",
    "And we further specify the available tools in our assistant prompt."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "29fe9a47-857f-4554-8539-8777734e3faa",
   "metadata": {},
   "outputs": [],
   "source": [
    "from datetime import datetime\n",
    "from langchain_groq import ChatGroq\n",
    "from langchain_core.prompts import ChatPromptTemplate\n",
    "\n",
    "from langchain_community.tools.tavily_search import TavilySearchResults\n",
    "from langchain_core.prompts import ChatPromptTemplate\n",
    "from langchain_core.runnables import Runnable, RunnableConfig\n",
    "\n",
    "# Assistant\n",
    "class Assistant:\n",
    "    \n",
    "    def __init__(self, runnable: Runnable):\n",
    "        self.runnable = runnable\n",
    "\n",
    "    def __call__(self, state: State, config: RunnableConfig):\n",
    "        while True:\n",
    "            # Get any user-provided configs \n",
    "            image_url = config['configurable'].get(\"image_url\", None)\n",
    "            # Append to state\n",
    "            state = {**state, \"image_url\": image_url}\n",
    "            # Invoke the tool-calling LLM\n",
    "            result = self.runnable.invoke(state)\n",
    "            # If it is a tool call -> response is valid\n",
    "            # If it has meaninful text -> response is valid\n",
    "            # Otherwise, we re-prompt it b/c response is not meaninful\n",
    "            if not result.tool_calls and (\n",
    "                not result.content\n",
    "                or isinstance(result.content, list)\n",
    "                and not result.content[0].get(\"text\")\n",
    "            ):\n",
    "                messages = state[\"messages\"] + [(\"user\", \"Respond with a real output.\")]\n",
    "                state = {**state, \"messages\": messages}\n",
    "            else:\n",
    "                break\n",
    "        return {\"messages\": result}\n",
    "\n",
    "# Prompt \n",
    "primary_assistant_prompt = ChatPromptTemplate.from_messages(\n",
    "    [\n",
    "        (\n",
    "            \"system\",\n",
    "            \"You are a helpful assistant for with five tools: (1) web search, \"\n",
    "            \"(2) a custom, magic_function, (3) text to image, (4) image to text \"\n",
    "            \"(5) text to speech. Use these provided tools in response to the user question. \"\n",
    "            \"Your image url is: {image_url} \"\n",
    "            \"Current time: {time}.\",\n",
    "        ),\n",
    "        (\"placeholder\", \"{messages}\"),\n",
    "    ]\n",
    ").partial(time=datetime.now())\n",
    "\n",
    "# LLM chain\n",
    "llm = ChatGroq(temperature=0, model=\"llama3-70b-8192\")\n",
    "assistant_runnable = primary_assistant_prompt | llm.bind_tools(tools)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "96514473-c092-4195-bf76-9c61089b5072",
   "metadata": {},
   "source": [
    "### Graph\n",
    "\n",
    "Here, we lay out the graph."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "dacf444f-be0f-41bd-b9bd-5ac776fbd5f8",
   "metadata": {},
   "outputs": [],
   "source": [
    "from langgraph.checkpoint.sqlite import SqliteSaver\n",
    "from langgraph.graph import END, StateGraph\n",
    "from langgraph.prebuilt import ToolNode, tools_condition\n",
    "from langchain_core.runnables import RunnableLambda\n",
    "\n",
    "# Graph\n",
    "builder = StateGraph(State)\n",
    "\n",
    "# Define nodes: these do the work\n",
    "builder.add_node(\"assistant\", Assistant(assistant_runnable))\n",
    "builder.add_node(\"tools\", create_tool_node_with_fallback(tools))\n",
    "\n",
    "# Define edges: these determine how the control flow moves\n",
    "builder.set_entry_point(\"assistant\")\n",
    "builder.add_conditional_edges(\n",
    "    \"assistant\",\n",
    "    # If the latest message (result) from assistant is a tool call -> tools_condition routes to tools\n",
    "    # If the latest message (result) from assistant is a not a tool call -> tools_condition routes to END\n",
    "    tools_condition, \n",
    "    # \"tools\" calls one of our tools. END causes the graph to terminate (and respond to the user)\n",
    "    {\"tools\": \"tools\", END: END},\n",
    ")\n",
    "builder.add_edge(\"tools\", \"assistant\")\n",
    "\n",
    "# The checkpointer lets the graph persist its state\n",
    "memory = SqliteSaver.from_conn_string(\":memory:\")\n",
    "graph = builder.compile(checkpointer=memory)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d404bfe1-fc7a-49f1-9e7a-4bd77f830c6d",
   "metadata": {},
   "source": [
    "We can visualize it."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "983ab01b-bd31-47b1-bfd8-15cb0e555156",
   "metadata": {},
   "outputs": [],
   "source": [
    "from IPython.display import Image, display\n",
    "\n",
    "try:\n",
    "    display(Image(graph.get_graph(xray=True).draw_mermaid_png()))\n",
    "except:\n",
    "    pass"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d6388175-6b8f-483c-ab31-948258a8fb7e",
   "metadata": {},
   "source": [
    "### Test\n",
    "\n",
    "Now, we can test each tool!\n",
    "\n",
    "See the traces to audit specifically what is happening."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bbc9a513-56cf-45fc-a276-d68c54620203",
   "metadata": {},
   "outputs": [],
   "source": [
    "questions = [\"What is magic_function(3)\",\n",
    "             \"What is the weather in SF?\",\n",
    "             \"Generate an image based upon this text: 'a yellow lab puppy running free with wild flowers in the mountain behind'\",\n",
    "             \"Tell me a story about this image\",\n",
    "             \"Convert this text to speech: The image features a small white dog running down a dirt path, surrounded by a beautiful landscape. The dog is happily smiling as it runs, and the path is lined with colorful flowers, creating a vibrant and lively atmosphere. The scene appears to be set in a mountainous area, adding to the picturesque nature of the image.\"\n",
    "            ]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e3baef29-84c5-491d-8ff7-107d64f23435",
   "metadata": {},
   "outputs": [],
   "source": [
    "import uuid \n",
    "_printed = set()\n",
    "image_url = None\n",
    "thread_id = str(uuid.uuid4())\n",
    "\n",
    "config = {\n",
    "    \"configurable\": {\n",
    "        \"image_url\": image_url,\n",
    "        # Checkpoints are accessed by thread_id\n",
    "        \"thread_id\": thread_id,\n",
    "    }\n",
    "}\n",
    "\n",
    "events = graph.stream(\n",
    "    {\"messages\": (\"user\", questions[0])}, config, stream_mode=\"values\"\n",
    ")\n",
    "for event in events:\n",
    "    _print_event(event, _printed)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d25fdf4f-feac-41c6-828c-24494d4bc7c9",
   "metadata": {},
   "source": [
    "Trace: \n",
    "\n",
    "https://smith.langchain.com/public/e4f4055f-eb68-482a-8843-cecc67ea76d3/r"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5542c838-44f8-45d4-a866-72a056ece638",
   "metadata": {},
   "outputs": [],
   "source": [
    "_printed = set()\n",
    "image_url = None\n",
    "thread_id = str(uuid.uuid4())\n",
    "\n",
    "config = {\n",
    "    \"configurable\": {\n",
    "        \"image_url\": image_url,\n",
    "        # Checkpoints are accessed by thread_id\n",
    "        \"thread_id\": thread_id,\n",
    "    }\n",
    "}\n",
    "\n",
    "events = graph.stream(\n",
    "    {\"messages\": (\"user\", questions[1])}, config, stream_mode=\"values\"\n",
    ")\n",
    "for event in events:\n",
    "    _print_event(event, _printed)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8391f5fa-aa60-4784-a732-a5e098d11624",
   "metadata": {},
   "source": [
    "Trace: \n",
    "\n",
    "https://smith.langchain.com/public/1a46bdba-448b-4b23-a78b-650d28d5ee7f/r"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "ed58a028-fad7-4ba4-8117-b69a5d0b6489",
   "metadata": {},
   "outputs": [],
   "source": [
    "_printed = set()\n",
    "image_url = None\n",
    "thread_id = str(uuid.uuid4())\n",
    "\n",
    "config = {\n",
    "    \"configurable\": {\n",
    "        \"image_url\": image_url,\n",
    "        # Checkpoints are accessed by thread_id\n",
    "        \"thread_id\": thread_id,\n",
    "    }\n",
    "}\n",
    "\n",
    "events = graph.stream(\n",
    "    {\"messages\": (\"user\", questions[2])}, config, stream_mode=\"values\"\n",
    ")\n",
    "for event in events:\n",
    "    _print_event(event, _printed)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "03af241a-83a7-4f65-a628-fac0971468b6",
   "metadata": {},
   "source": [
    "Trace: \n",
    "\n",
    "https://smith.langchain.com/public/cc9ca4f1-05c8-4dea-a85b-c852f22c14ae/r"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e8283c47-145e-4243-9f5c-4203bfde62d3",
   "metadata": {},
   "outputs": [],
   "source": [
    "import requests\n",
    "from PIL import Image\n",
    "from io import BytesIO\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "def display_image(image_url):\n",
    "    \"\"\"Display generated image\"\"\"\n",
    "    response = requests.get(image_url)\n",
    "    img = Image.open(BytesIO(response.content))  \n",
    "    plt.imshow(img)\n",
    "    plt.axis('off')\n",
    "    plt.show()\n",
    "\n",
    "image_url = event['messages'][-2].content\n",
    "display_image(image_url)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "19fd5aaa-c882-4de3-b94f-ee290947f944",
   "metadata": {},
   "outputs": [],
   "source": [
    "import uuid \n",
    "\n",
    "_printed = set()\n",
    "thread_id = str(uuid.uuid4())\n",
    "\n",
    "config = {\n",
    "    \"configurable\": {\n",
    "        \"image_url\": image_url,\n",
    "        # Checkpoints are accessed by thread_id\n",
    "        \"thread_id\": thread_id,\n",
    "    }\n",
    "}\n",
    "\n",
    "events = graph.stream(\n",
    "    {\"messages\": (\"user\", questions[3])}, config, stream_mode=\"values\"\n",
    ")\n",
    "for event in events:\n",
    "    _print_event(event, _printed)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "dd67d65a-717c-4da1-bbd6-1a796bfc077e",
   "metadata": {},
   "source": [
    "Trace: \n",
    "\n",
    "https://smith.langchain.com/public/89f45ee4-effc-4cca-b3e6-f12cf5c29168/r"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "73e3e12e-d725-4e66-aba1-ddc2d270f468",
   "metadata": {},
   "outputs": [],
   "source": [
    "_printed = set()\n",
    "image_url = None\n",
    "thread_id = str(uuid.uuid4())\n",
    "\n",
    "config = {\n",
    "    \"configurable\": {\n",
    "        \"image_url\": image_url,\n",
    "        # Checkpoints are accessed by thread_id\n",
    "        \"thread_id\": thread_id,\n",
    "    }\n",
    "}\n",
    "\n",
    "events = graph.stream(\n",
    "    {\"messages\": (\"user\", questions[4])}, config, stream_mode=\"values\"\n",
    ")\n",
    "for event in events:\n",
    "    _print_event(event, _printed)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "bb7536d7-8883-4e8b-8584-251e1c3b92f2",
   "metadata": {},
   "outputs": [],
   "source": [
    "from IPython.display import Audio\n",
    "\n",
    "def play_audio(output_url):\n",
    "    return Audio(url=output_url, autoplay=False)\n",
    "\n",
    "audio_url = event['messages'][-2].content\n",
    "play_audio(audio_url)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "25ec5e4c-37ff-495f-992f-c3b3935b8565",
   "metadata": {},
   "source": [
    "Trace: \n",
    "\n",
    "https://smith.langchain.com/public/b504a513-3123-4bfd-8796-3364968559b2/r"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.14"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
